首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
js基础
麦壳儿
创建于2021-12-03
订阅专栏
- js 基础 - js 原理 - js 底层探索 - js 应用
暂无订阅
共7篇文章
创建于2021-12-03
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
promise实现从0到1(附源码)
文章摘要: PromiseA+规范 ;promise难点其实就是各种细节、边界条件。我们研究探索他的,其实不必拘泥这些细节,抓住核心:状态流转 是关键!什么的情况下有什么样的行为,内部是怎么流转的。
freeze-js原理系列篇
原生Object身上带的freeze方法是浅冻结,这里我们写 一个深度冻结。也就是浅冻+递归浅冻。 作用:冻结一个对象,让其不能再 增/减/改 属性。 也不能修改该对象已有属性的 可枚举性、可配置、
bind-js原理系列篇
作用:改变函数this指向,返回一个绑定了this的新函数,你需要再次调用此函数才会执行。 知识储备 - bind与apply/call一样都能改变函数this指向 ,但bind并不会立即执行函数。
apply-js原理系列篇
作用:借用某个对象的方法同时调用执行。【修改this指向同时执行】 call与apply唯一区别在于参数不同 ; 理解了call实现后就直接上代码 代码实现 用ES6实现,更简洁。使用拓展运算符处理参
call-js原理系列篇
作用:借用某个对象的方法同时调用执行。【修改this指向同时执行】 知识储备 - call,apply,bind属于显示绑定,这三个方法都能直接修改this指向。 - 其中call与apply比较特殊
new-模拟实现,简单易懂
作用:创建一个构造函数的实例对象。 知识储备 - 实例.proto = 类.prototype - 实参里第一个参数: [].slice.call(arguments)[0] ;
Object.create-模拟实现,简单易懂
作用:以传入的对象为原型,创建一个新对象。 知识储备 - 每个函数都有prototype 属性,指向原型。 - 每个对象都有__proto__属性,指向创建该对象的构造的原型。