# 箭头函数
# 使用方法
const f = v => v
// equal
const f = function (v) {
return v
}
1
2
3
4
5
6
2
3
4
5
6
# 使用注意点
- 函数体内 this 对象,指的是定义时所在对象,不可变
- 不可以当作构造函数,否则会报错
- 不可以使用 arguments 对象,可以用 rest 代替
- 不可以使用 yield 命令,因此不可以作为 Generator 函数
- 没有 prototype 属性
# 具体实现
polyfill 如下
const a = () => { console.log(this) }
// babel parse
var _this = void 0
var a = function () {
console.log(_this)
}
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9