ES6中箭头函数与普通函数this的区别

ES6中箭头函数与普通函数this的区别普通函数中的this:this总是代表它的直接调用者,例如obj.func,那么func中的this就是obj在默认情况,没找到直接调用者,则this指的是window在严格模式下,没有直接调用者的函数中的this是undefined使用call,apply,bind(ES5新增)绑定的,this指的是绑定的对象箭头函数中的this:默认指向在定义时作用域…

大家好,欢迎来到IT知识分享网。ES6中箭头函数与普通函数this的区别

普通函数中的this:

  1. this总是代表它的直接调用者, 例如 obj.func , 那么func中的this就是obj
  2. 在默认情况,没找到直接调用者, 则this指的是 window
  3. 在严格模式下,没有直接调用者的函数中的this是 undefined
  4. 使用call,apply, bind(ES5新增)绑定的, this指的是 绑定的对象

箭头函数中的this:

  • 默认指向在定义时作用域, 它所处的对象,而不是执行时的对象, 定义它的时候,可能环境是window(即继承父级的this)

其他区别:

  1. 箭头函数不能当作构造函数,也就是说,不能使用new命令,否则会报错
  2. 箭头函数不能使用argumen对象,该对象在函数体内不存在。如果要用,可以用rest参数代替

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/11934.html

(0)

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

关注微信