ES6中箭头函数的基本使用
一.基本使用
箭头函数:也是一种定义函数的方式
1.无参数,无返回值的箭头函数 const ccc = (参数列表) => { }
const ccc = () => { }
2.参数问题:
2.1 放入两个参数
const sum = (num1,num2) => {
return num1 + num2
}
2.2 放入一个参数:当只有一个参数时,括号可以省略
const power = num => {
return num * num
}
3.返回值问题
3.1 函数中有多行代码
const aaa = () => {
return console.log('hello world');
return console.log('hello vuejs');
}
3.2 函数中只有一行代码,可以省略return
const mul = (num1,num2) => num1 * num2
console.log(mul(20,30)); // 600
const demo = () => console.log('hello world')
console.log(demo()); // hello world , undefined
因为console.log函数没有返回值,所以当打印完hello world后,会返回undefined
二.箭头函数中this的使用
当想把一个函数作为参数,传给另一个函数时,经常会使用箭头函数
const obj = {
aaa() {
setTimeout(function () {
console.log(this); // window
})
setTimeout( () => {
console.log(this); // obj对象
})
}
}
问题:箭头函数中的this是如何查找的?
答案:向外层作用域中,一层层查找this,直到有this的定义