上一页 1 ··· 5 6 7 8 9 10 下一页
摘要: function instanceOf(left,right) { let proto = left.__proto__; let prototype = right.prototype while(true) { if(proto null) return false if(proto proto 阅读全文
posted @ 2020-12-28 16:45 `Duet` 阅读(80) 评论(0) 推荐(0) 编辑
摘要: function myPromise(constructor){ let self=this; self.status="pending" //定义状态改变前的初始状态 self.value=undefined;//定义状态为resolved的时候的状态 self.reason=undefined; 阅读全文
posted @ 2020-12-27 18:51 `Duet` 阅读(81) 评论(0) 推荐(0) 编辑
摘要: apply Function.prototype.myApply = function(context){ context = context || window context.fn = this var res if(arguments[1]){ res = context.fn(...argu 阅读全文
posted @ 2020-12-27 14:25 `Duet` 阅读(97) 评论(0) 推荐(0) 编辑
摘要: new的原理 1.创建一个空对象 2.将新对象的__proto__指向构造函数的prototype对象 3.this指向新对象,给新对象添加属性 4.返回新对象 function newFn(fn,...args){ let obj = {} obj.__proto__ = fn.prototype 阅读全文
posted @ 2020-12-24 20:21 `Duet` 阅读(92) 评论(0) 推荐(0) 编辑
摘要: //1: let 块级独立作用域 for(let i=0; i<=5; i++){ setTimeout(()=>{ console.log(i); }, i * 1000); } //2:立即执行函数,定义后立即执行,将变量包裹成局部变量。 for(var i=0; i<=5; i++){ (fu 阅读全文
posted @ 2020-12-24 18:58 `Duet` 阅读(134) 评论(0) 推荐(0) 编辑
摘要: //定义柯里化函数 function curry(fn) { //定义一个空数组 var arr = []; //闭包,返回一个匿名函数 return function () { //如果参数的长度等于0时(就是不填参数,如下面的fns()) if (arguments.length 0) { // 阅读全文
posted @ 2020-12-24 18:55 `Duet` 阅读(59) 评论(0) 推荐(0) 编辑
摘要: 节流 throttle(一段时间内只执行一次handle函数) const div1 = document.getElementById('div1') let timer = null div1.addEventListener('drag',function (e) { if (timer){ 阅读全文
posted @ 2020-12-24 17:28 `Duet` 阅读(115) 评论(0) 推荐(0) 编辑
摘要: 防抖 debounce (一段时间不触发事件才执行一次handle函数) const input1 = document.getElementById('input1') let timer = null input1.addEventListener('keyup',function () { i 阅读全文
posted @ 2020-12-24 15:58 `Duet` 阅读(181) 评论(0) 推荐(0) 编辑
摘要: function deepClone(obj={}) { if(typeof obj !== 'object' || obj == null){ // obj 是null,或者不是对象和数组,直接返回 return obj } //初始化返回结果 let result if (obj instanc 阅读全文
posted @ 2020-12-23 17:41 `Duet` 阅读(87) 评论(0) 推荐(0) 编辑
摘要: function flatten(arr){ let res = []; arr.map((item)=>{ if(Array.isArray(item)){ res = res.concat(flatten(item)); }else{ res.push(item); } }); return r 阅读全文
posted @ 2020-12-23 17:04 `Duet` 阅读(87) 评论(0) 推荐(0) 编辑
上一页 1 ··· 5 6 7 8 9 10 下一页