箭头函数(常用)

ES6 允许使用箭头(=>)定义函数

箭头函数对于使用function关键字创建的函数有以下区别
1.箭头函数没有arguments(建议使用更好的语法,剩余运算符替代)
2.箭头函数没有prototype属性,没有constructor,即不能用作与构造函数(不能用new关键字调用)
3.箭头函数没有自己的this,它的this是词法,引用的是上下文的this,即在你写这行代码的时候就箭头函数的this就已经和外层执行上下文的this绑定了(这里个人认为并不代表完全是静态的,因为外层的上下文仍是动态的可以使用call,apply,bind修改,这里只是说明了箭头函数的this始终等于它上层上下文中的this)

建议
箭头函数替代了以前需要显式的声明一个变量保存this的操作,使得代码更加的简洁
ES5写法不推荐:


image.png

ES6箭头函数:


image.png

值得注意的是makeRequest后面的function不能使用箭头函数,因为这样它就会再使用上层的this,而再上层是全局的执行上下文,它的this的值会指向window

你可能感兴趣的:(箭头函数(常用))