![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
js
点了个汤
菜鸡前端一枚
展开
-
PromiseA+规范及手写Promise
PromiseA+规范及手写Promisepromise的状态一个promise有三种状态:等待态(Pending)、执行态(Fullfilled)、拒绝态(Rejected),初始的状态为Pending,可以变更为剩下两种状态种的其中一种,但一旦变更之后,不可再次改变状态满足A+规范三种状态的情况并状态变更只以第一次为准:class FackPromise{ // 定义初始状态 private promiseState:string="Pending"; // 定义初始返回原创 2021-10-11 14:02:43 · 388 阅读 · 0 评论 -
函数柯里化及经典案例
函数柯里化及经典案例先解释什么是柯里化,currying,把接收多个参数的函数变为接收单一单一参数的函数,并且返回接收剩余参数而且返回结果的新函数。前因我接收到柯里化是因为一次面试,题干是这样的let a=add(1)(1)(3)() 要求实现这个函数让里面的参数能到递加得到结果const add=(a)=>{ let current=a; let adder=function(b:any){ if(b){ current=cur原创 2021-01-10 22:37:24 · 377 阅读 · 0 评论 -
event loop 事件循环
event loop从程序的角度来说。event loop是一个程序结构。用于等待和发送消息和事件。程序中有两个线程,一个负责程序本身的运行,为主线程,一个负责主线程和其他线程的通信。同步任务 、异步任务、宏任务、微任务同步任务:就是我们的单线程顺序执行的代码,异步任务:分为宏任务和微任务微任务:promise.then、process.nextTick(node的api,把当前任务放在执行栈最后执行,执行站完毕之后,先执行nextTick,在到等待队列找)宏任务:promise(他是原创 2020-12-29 18:50:34 · 121 阅读 · 0 评论 -
原型原型链
原型产生的原因?因为构造函数每次创建对象,有一个方法是频繁使用的,如果该方法放在这个构造函数上,那么我new1000个该构造函数。内存地址对这个频繁使用的方法也需要有1000个位置存在。由此产生了原型。什么是原型?原型前面加上一个模板原型,可以理解为我们从哪儿来的,长啥样,基因是谁的。这个就是原型(即父亲)。几个概念:构造函数,是创造我们的人,也就是母亲prototype,是一个对象,就是我们说的原型。也就是父亲在js里,constructor是原型自带的属性指向当前的构原创 2020-12-29 18:50:02 · 171 阅读 · 0 评论