一只Chang

04 2020 档案

画了一下午的图,完成了promise的部分图解
摘要:基本过程: 初始化 Promise 状态(pending) 立即执行 Promise 中传入的 fn 函数,将Promise 内部 resolve、reject 函数作为参数传递给 fn ,按事件机制时机处理 执行 then(..) 注册回调处理数组(then 方法可被同一个 promise 调用多 阅读全文

posted @ 2020-04-28 16:42 一只Chang 阅读(229) 评论(0) 推荐(0)

实现bind的全程思路
摘要:<script> // 分析: 相比于call和apply,bind的返回的是一个函数,并且这个函数完成的任务与apply相同。 //这个新函数的 this 被指定为 bind() 的第一个参数,而其余参数将作为新函数的参数,供调用时使用。 //另外由于返回的是一个函数,要考虑这个返回函数作为构造函 阅读全文

posted @ 2020-04-26 18:16 一只Chang 阅读(312) 评论(0) 推荐(0)

防抖和节流的概念和实现方式
摘要:防抖: 短时间内大量触发同一事件,只会执行一次函数,实现原理为设置一个定时器,约定在xx毫秒后再触发事件处理,每次触发事件都会重新设置计时器,直到xx毫秒内无第二次操作,防抖常用于搜索框/滚动条的监听事件处理,如果不做防抖,每输入一个字/滚动屏幕,都会触发事件处理,造成性能浪费。 实现方式: fun 阅读全文

posted @ 2020-04-14 17:01 一只Chang 阅读(877) 评论(0) 推荐(0)

手写实现call,apply,bind方法
摘要:实现call方法 Function.prototype.myCall = function(thisArg, ...args) { const fn = Symbol('fn') // 声明一个独有的Symbol属性, 防止fn覆盖已有属性 thisArg = thisArg || window / 阅读全文

posted @ 2020-04-14 16:53 一只Chang 阅读(2355) 评论(0) 推荐(0)

导航