ES6箭头函数
箭头函数是ES6版本的JavaScript新特性,没有自己的this, arguments。箭头函数更适合那些需要匿名函数的地方,并且它们不能用作构造函数。
一、更简洁的函数
下面是一个箭头函数的例子
1 | // 定义一个数组 |
二、不绑定this
箭头函数出现之前,每个新定义的函数都有它自己的 this
值(在构造函数的情况下是一个新对象,在严格模式的函数调用中为 undefined,如果该函数被作为“对象方法”调用则为基础对象等)。This
被证明是令人厌烦的面向对象风格的编程。
1 | function Person() { |
在ECMAScript 3/5中,通过将this
值分配给封闭的变量,可以解决this
问题。
1 | function Person() { |
或者,可以创建绑定函数,以便将预先分配的this
值传递到绑定的目标函数(上述示例中的growUp()
函数)。
箭头函数不会创建自己的this,它只会从自己的作用域链的上一层继承this
。因此,在下面的代码中,传递给setInterval
的函数内的this
与封闭函数中的this
值相同:
1 | function Person(){ |
You need to set
install_url
to use ShareThis. Please set it in _config.yml
.