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的定义