- 简洁的语法
箭头函数
let add = (a, b) => a + b
普通函数
let add = function(a, b) {
return a + b;
}
- 语法
() => { ... } // no parameter
x => { ... } // one parameter
(x, y) => { ... } // several parameters
- 函数体内表达式
x => x * x // expression
// 等同于
x => { return x * x }
// ES6 箭头函数
const squares = [1, 2, 3].map(x => x * x);
// 普通函数
const squares = [1, 2, 3].map(function (x) { return x * x });
-
没有this绑定
that = this
function Prefixer(prefix) {
this.prefix = prefix;
}
Prefixer.prototype.prefixArray = function (arr) {
var that = this; // (A)
return arr.map(function (x) {
return that.prefix + x;
});
};
> var pre = new Prefixer('Hi ');
> pre.prefixArray(['Joe', 'Alex'])
[ 'Hi Joe', 'Hi Alex' ]