nodejs箭头函数
背景
箭头函数,出现于ES6规范中。
使⽤
就是lambda函数。
⼀般使⽤:
(a, b) => { return a + b; }
简略模式:
当参数只有⼀个时,可以省略括号;当返回值只有⼀个表达式时,可以省略花括号和return,但如果返回的是对象字⾯量{a:3},则需要花括号和return语句。
a => a + b;
属性匹配:
这是⼀个特点,能匹配对象⾥的属性,如果不存在,为undefined。
({a, b}) => console.log(a, b);
//相当于
function(o) {
console.log(o.a, o.b);
}
this
箭头函数的this跟function不⼀样,⽤的时候千万⼩⼼。
对于function:
function的this指向调⽤者本⾝!
如果function是直接调⽤⽽不是作为⽅法调⽤:⾮严格模式指向global;严格模式指向undefined。
js arguments
对于箭头函数:
this指向函数定义时的环境this,⼀层层往上this,跟调⽤⽅没关系。
如果没有,则是{}!⽆论严格模式与否。
其他限制
不可以当作构造函数,也就是说,不可以使⽤new命令,否则会抛出⼀个错误。 不可以使⽤arguments对象,该对象在函数体内不存在。如果要⽤,可以⽤Rest参数代替。 不可以使⽤yield命令,因此箭头函数不能⽤作Generator函数。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论