
JavaScript 基础算法
JavaScript 基础算法
快乐征途
提高自身能力才是硬道理。
展开
-
JavaScript 防抖和节流
防抖 所谓防抖,就是把触发非常频繁的的事件合并成一次去执行,即在指定的时间内只执行一次回调函数,如果在指定时间内又触发事件,重新计时 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>防抖</title> </head> <button id="btn">点击</button> <body>原创 2021-04-15 17:04:21 · 93 阅读 · 0 评论 -
JavaScript 判断闭合括号
判断字符串中的括号是否都合法,是否都闭合 示例字符串:{([ddd])} function isValidate(str) { const inArr = []; const arr = str.split(''); for (let s of arr) { if (s === '{' || s === '[' || s === '(') { // 入栈 inArr.push(s); } if (s ===原创 2021-04-16 08:28:03 · 1465 阅读 · 3 评论 -
JavaScript 比较版本号的大小
版本号示例 6.1.1 ^8.3.5 ~4.5.0 ^4.0.0-beta.3 方法一 const str = '^1.0.0-alpha.1' const str2 = '^1.0.1-alpha.1' function compare(v1, v2) { if (v1 === v2) { return 0 } const arr1 = v1.split(/\D/) const arr2 = v2.split(/\D/) // 默认版本号长度一原创 2021-04-15 17:08:49 · 3557 阅读 · 0 评论 -
JavaScript 实现斐波那契数列
斐波那契数列就是1,1,2,3,5,8,13…,后一位数字是前两位数字之和 // 暴力迭代,这种方法的算法复杂度是O(2^n),太费性能 function stair(n) { if (n === 0) { return 1; } else if (n < 0) { return 0; } else { return stair(n - 1) + stair(n - 2) } } // 缓存计算好的值(for 循环) 自下往上 性能最好 function st原创 2021-04-16 09:04:22 · 472 阅读 · 0 评论