
javascript
js的基本语法和ES的新特性
学习前端2年半
这个作者很懒,什么都没留下…
展开
-
js中的this指向
显示转化一般是依赖call,apply,bind的函数去改变this指向,call和apply的区别是传的参数不同,call使用的更多它传参是列表,apply传参是数组,而bind不同于二者它会返回一个新函数,然后显示转化的优先级高于隐式转化。new中的this一般都是指向新的实例化对象,它 的优先级是高于隐式转换和显示转化的,究其原因好像是new的过程中也调用了显示转化,所以如果有显示转化new中的显示转化会覆盖旧的显示转化。默认绑定规则是指向window的,比如函数的独立调用,定时器,立即指向函数。原创 2023-08-27 16:45:02 · 109 阅读 · 0 评论 -
原型相关知识
原型链:对象都有__proto__属性,这个属性就是指向它的原型对象,原型对象也是对象,所以它也有__proto__属性,指向它的 原型对象,像这样一次一次形成的链式结构就是原型链,在最上层找不到则会返回null。原型可以用来继承,但是原型继承有缺点:一个子对象修改了原型对象共享数据会影响到所有继承自该原型的对象。原型对象:每个函数都有prototype属性,称之为原型,这个就是原型对象,在这个原型可以放一些属性和方法,可以共享给实例对象使用,同时原型也是可以继承的。原创 2023-08-04 16:07:56 · 132 阅读 · 1 评论 -
ES新特性(一)
2,this指向问题,它this是指向上一个函数的this指向,不能使用apply,call,bind函数。箭头函数:箭头函数与普通函数区别有如下几点。1,不能作为构造函数,同时也意味它没有原型。3,不能使用argument参数传值。原创 2023-07-31 09:46:58 · 142 阅读 · 1 评论 -
promise
promise中all()方法,它是接受几个promise对象同时处理,当几个对象处理完,如果几个对象都是fulfilled状态那么返回的新的promise对象也是fulfilled,并且它的值是一个数组promise,里面是一个状态和几个值,如果几个对象中只要有一个是rejected状态,那么它就会也是rejected状态和返回的reason。promise中的race()方法,它和它的英文名有点想,比赛的意思,同时接受几个promise对象,谁先转化状态,那么它返回的新promise就是谁。原创 2023-07-28 14:40:32 · 62 阅读 · 1 评论 -
闭包相关知识
闭包的关键点在作用域链,我们在调用函数执行函数的时候我们会区先去创建执行上下文环境,在这期间会有创建阶段和执行阶段,创建阶段有作用域,变量对象和this指向三种,而作用域链包括当前函数变量对象加父级变量对象,而js是单线程的,闭包就是依靠父级变量对象才可以访问其他函数的局部变量,如果在外部因为不在函数执行环境内当然不能去访问函数。闭包:闭包是有权访问另一个函数作用域变量的函数,内层函数访问外层函数作用域。注意点:闭包不一定就必须要有return,这同时也意味着不一定会存在内存泄漏。原创 2023-07-28 10:13:18 · 75 阅读 · 1 评论