多个参数写法
const fn = (a1,a2) =>{
return a1 + a2;
}
如果函数内部只有一行代码可以这样写 默认返回 a1 + a2;
const fn = (a1,a2) => a1 + a2;
一个参数 写法
const fn = a1 =>{ // a1 可以不加 ()
return a1;
}
没有参数写法
const fn = () =>{
console.log(" hello word ")
}
const obj = {
fn:(a1,a2)=>{
console.log(this);
return a1*a2;
},
add(a){
console.log(this);
return a;
}
}
console.log(obj.fn(5,5)); // fn的 this 指向 widow
console.log(obj.add(100)); // add的 this 指向 obj
const obj = {
aaa(){
setTimeout(function({
console.log(this); //window 用这种方式写是call调用在传this进去,始终指向window
}, 10);
setTimeout(() => {
console.log(this); //obj 写成箭头函数,他是向外层作用域查找this这个变量,this => obj
}, 10); }
}
obj.aaa();