随笔分类 - JavaScript
摘要:适用人群 可熟练使用Promise 前言 关于手写Promise的源码之前尝试了不止4,5次但都以失败告终,不是觉得难不想坚持就是项目加急没有时间导致搁置。这次下定决心要花一个完整的时间段攻破这个事情,因为脑袋不是很灵光,总的算下来差不多4-5个小时,但是这里结果最重要,终于按照可以理解的思路完成了
阅读全文
摘要:如何监听input输入框中的中文输入? 一般常用 input 事件监听 input 输入框的内容输入,但是 input 事件不能识别输入法的输入。即,当在 input 输入框中使用中文输入法输入汉字时,input 事件会在监听到最终输入的汉字之前,监听到输入的所有的中文拼音(英文字母)。所以如果想要
阅读全文
摘要:发布订阅模式 class EventEmitter { constructor () { this.events = {}; } // 绑定函数 on (type, fn) { (this.events[type] || (this.events[type] = [])).push(fn); } /
阅读全文
摘要:防抖与节流 防抖 短时间内多次触发同一函数,只执行第一次/最后一次。比如说:一只小猫冷的发抖,稍用力按住它,它就不抖了。可以在它还没抖的时候按住,也可以在它抖了很久之后按住 普通防抖 /** * 普通实现 * 函数防抖[函数高频率被调用只执行第一次/最后一次] * @param {Function}
阅读全文
摘要:js继承 原型链继承 子类原型指向父类的一个实例对象。子类会继承父类实例上的属性和方法,也可以访问父类原型上的属性和方法。 如果子类原型上想要覆盖父类的方法/添加父类没有的方法,这些方法必须在原型赋值之后添加,否则无效。 function SuperType () { this.prop = tru
阅读全文
摘要:前提 以下方法在其数组元素被删除/未被初始化时不调用回调函数。 使用索引 in 数组的方式判断数组元素是否是被删除/未被初始化的状态 forEach Array.prototype._forEach = function (callback, thisArg) { const arrLen = th
阅读全文
摘要:来源 https://juejin.cn/post/6968713283884974088#heading-9 https://mp.weixin.qq.com/s/uKPVedfQkgEPYoRUtwyeQQ call Function.prototype.mCall = function (co
阅读全文