通过最近做网站时又对箭头函数表达式加深了印象
使用箭头函数表达式有两个方面的作用:
1.箭头函数表达式它的语法要比函数表达式更简洁
2.没有自己的this,arguments,super或new.target
箭头函数不会创建自己的this,它只会从自己的作用域链的上一层继承this
它的基础语法为:
(p1, p2, …, pN) => { et}
(p1, p2, …, pN) => et
相当于:(p1, p2, …, pN) =>{ return et; }
当只有一个参数时,圆括号是可选的:
(sP) => { st }
sP => { st }
没有参数的函数应该写成一对圆括号:
() => { st }
在箭头函数出现之前,每一个新函数根据它是被如何调用的来定义这个函数的this值:
1.如果是该函数是一个构造函数,this指针指向一个新的对象
2.在严格模式下的函数调用下,this指向undefined
3.如果是该函数是一个对象的方法,则它的this指针指向这个对象
new操作符
箭头函数不能用作构造器,因为和 new 一起用就会报错
函数主题编写时可以简写也可以常规的书写
简写时只需要一个表达式和一个返回值。常规编写时必须有一个明确的返回值例如:
简写函数 省略return :var func = x => x * x;
常规编写 明确的返回值 var func = (x, y) => { return x + y; };