// 基本用法
var x = v => v
// 等同于
var f = function (v) {
return v
}
// 没有参数和多个参数时
var f = () => 5
// 等同于
var f = function () {
return 5
}
var f = (num1, num2) => num1 + num2
// 等同于
var f = function (num1, num2) {
return num1 + num2
}
// 由于大括号被解释为代码块,所以如果箭头函数直接返回一个对象,必须在对象外面加上括号,否则会报错。
let gitTempTtem = id => ({ id: id, name: "Temp" })
// 去掉括号会报错
// 箭头函数没用自己的this对象它没有自己的this对象,
// 内部的this就是定义时上层作用域中的this。也就是说,箭头函数内部的this指向是固定的,相比之下,普通函数的this指向是可变的。
function foo() {
setTimeout(() => {
console.log(this.id)
}, 100)
}
var id = 21;
foo.call({ id: 42 })
04-11
492
11-18
2051