摘要:
摘要:使用两个循环,分别作为截取字符串片段的前后指针,将没有重复的片段放入数组,最终得到的通过字符串长度排序,从而得到结果 1 // 暴力破解法 2 function getStr(str) { 3 const arr = []; 4 const strLength = str.length; 5 阅读全文
摘要:
快速排序:每次循环使用数组中间位置的值按照大小,将数组分成左右两个部分,使用递归,分别对左右两个部分执行分割操作 1 // 快速排序 2 function quickSort(arr) { 3 if (arr.length <= 1) { 4 return arr; 5 } 6 const midI 阅读全文
摘要:
功能如下: WeakMap 解决循环引用问题 支持拷贝的数据类型: 基本数据类型:number、string、boolean、undefined、null、symbol 引用数据类型:Date、RegExp、Function、Object、Map、Set 代码实现: 1 function clone 阅读全文
摘要:
实现功能如下: Promise构造函数 promise实例then方法 pomise实例catch方法 promise实例finally方法 Promise静态resolve方法 Promise静态reject方法 Promise静态all方法代码: 1 const Pending = 'pendi 阅读全文
摘要:
概念: 防抖(debounce):延迟一定时间执行函数。在指定的时间间隔内,无论触发多少次函数,只有最后一次函数会在间隔时间结束后执行。 节流(throttle):控制函数执行的频率,在一定时间间隔内只执行一次函数。 2. 应用: 防抖: 搜索框输入:只有用户停止输入后才执行搜索功能。 按钮点击:防 阅读全文
摘要:
前提条件:数组对象中的id唯一 1 const tree = [ 2 {id: 1}, 3 {id:2, 4 children:[ 5 {id: 3, 6 children:[ 7 {id: 4, 8 children: [ 9 {id: 5} 10 ] 11 } 12 ] 13 } 14 ] 15 阅读全文
摘要:
核心方法: 对象属性排序:Array.sort() string和number类型的数组去重:new Set() 代码部分: 1 function uniqueArr(arr){ 2 let result = []; 3 arr.forEach(item=>{ 4 result.push(sortO 阅读全文
摘要:
//求1-n的和 function dosum(n){n if(n 1){ return n; }else{ return N + dosum(n - 1); } } // 求n的阶乘 function multiplication(n){ if(n 1){ return 1; } return n 阅读全文
摘要:
// 分析过程 // 数组长度 结果 // 1 1 1 // 2 2+1 3 // 3 3+(2+1)+1 7 // 4 4+(3+2+1)+(2+1)+1 14 // 5 5+(4+3+2+1)+(3+2+1)+(2+1)+1 25 // 取1个元素 取2个元素 取3个元素 取4个元素 取5个元素 阅读全文
摘要:
参考网址:https://www.jianshu.com/p/f8c7c55025fc 1.理解字面量,构造函数,构造函数实例的关系。 //只有构造函数有原型属性 - prototype,它是一个对象 // 1.字面量对象 var A = {}; console.log(A.prototype); 阅读全文