暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

ES6箭头函数使用call

IT那活儿 2022-04-29
2905

 

点击上方“IT那活儿”,关注后了解更多内容,不管IT什么活儿,干就完了!!! 

ES6箭头函数使用call,apply之后this的指向。

 

箭头函数this

A. 箭头函数内部的this是词法作用域,有上下文确定。

B. 箭头函数this是在‘定义函数’的时候绑定,而不是在‘执行函数’的时候绑定。

*词法作用域就是,你在写代码的时候就已经决定了变量的作用域,因此当词法分析器处理代码时会保持作用域不变。

Javascript使用的是词法作用域。

它最重要的特征是,它的定义过程发生在代码的书写阶段。

 

 

 

函数的主要特性

A. 箭头函数没有自己的this对象。

B. 箭头函数的this永远指向其父作用域。

C. 任何方法都改变不了this,包括call,apply,bind。

代码示例,如图:

说明call无法改变this指向,全局this指向的是window对象,fn函数也是全局, fn函数this指向全局,也就是window对象,等同于window.obj指向了window.fn,而所有函数和对象都是window对象的属性,apply同理, 所以两次的值都为1,如图:

 

END

 


本文作者:朱 维 

本文来源:IT那活儿(上海新炬王翦团队)

文章转载自IT那活儿,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论