- 博客(3)
- 收藏
- 关注
原创 保姆级教程,一次性搞懂手写Promise的全过程,彻底搞懂Promise原理
Promise是一个有状态的构造函数,出自ES6,主要用于实现异步编程,API请求等。它的出现避免了以往的回调地狱的问题,使得代码更加清晰,易于维护。该构造函数主要有以下几部分组成,分别是:构造器,实例方法:then,catch,finally。静态方法:resolve,reject,race,all等。
2024-04-27 20:39:12
790
原创 手写call,apply,bind方法,改变函数中的this
运行结果如下:从中可以发现:函数func自调用时,其内部的this指向window,通过myCall方法,可改变func函数内部的this,使其指向传入的对象。运行结果如下:myApply函数的入参中,第一个传入的是this指向的对象,通过数组的方式传入原函数的入参。myApply和apply函数一样,一经调用后,就直接执行原函数。执行结果:myBind函数和以上两个函数不同点在于,1:myBind函数调用后,不会立即执行,而是返回一个新的函数,需执行新函数后,才会改版原始函数中的this。
2024-04-05 23:31:53
314
1
原创 如何确定this的值?如何指定this的值?
js脚本的执行分为严格模式和非严格模式,不同的模式下,this的值有可能也是不一样的。在严格模式下,this的值可以指向任意值。如何改变this的值?改变this的值,可以分为两种方式,分别是在函数调用时改变在函数创建是改变。下一章,将讲解一下如何手写call,apply,bind方法,带着大家熟悉一下该方法下的底层原理。通过bind改变this后,函数不会立即执行,而是会生成一个新的函数,需要手动执行新的函数。2.2 通过对象方法调用时,在严格模式和非严格模式下,this的值都指向调用的对象。
2024-03-10 16:29:05
329
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人