箭头函数的其他用法

开发工具与关键技术: VS   与 ES6
作者:小明同学
撰写时间:2022  年 5  月 7 日
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
箭头函数:
箭头函数的单个参数:
1、单个参数可以省略圆括号
const add = x => { 
	return x + 1; 
};
console.log(add(1)); 
2、无参数或多个参数不能省略圆括号:
const add = () => {//无参数的时候 括号不能省略 
	return 1 + 1; 
};
const add1 = (x, y) => {//多个参数的时候,括号不能省略 
	return x + y; 
};
console.log(add1(1, 1));
3、单行函数体=>单行函数体可以同时省略 {} 和 return :
const add = (x, y) => { 
	return x + y; 
};
//简写形式 
const add=(x,y)=>x+y 
console.log(add(1,4));//5 

多行函数体不能再化简了 
const add = (x, y) => { 
const sum = x + y; 
	return sum; 
};
4、单行对象 =>如果箭头函数返回单行对象,可以在 {} 外面加上 (),让浏览器不再认为那是函数体 的花括号 
const add=(x,y)=>{ 
	return{ 
		sum:x+y 
	} 
}
//简写形式: 在{}外面加上(),让浏览器不再认为那是函数体的花括号 
const add = (x, y) => ({ 
	value: x + y 
}); 


非箭头函数中的 this 指向
1、全局作用域中的this指向:window对象 
console.log(this);//全局作用域中的this指向window对象 
2、一般函数中的this指向:调用的使用才能确定指向谁? 
作为函数调用指向window对象,作为方法被调用的时候,指向调用方法的对象 
'use strict'; 
function add(){ 
	//严格模式下 this指向undefined 
	//非严格模式下指向的是 window对象 
	console.log(this); 
}
add();//作为函数被调用的使用

'use strict'; 
const person={ 
	name:'zhangsan', 
	add:add 
}
function add(){ 
//作为方法被调用的时候,this 指向的是person对象 
	console.log(this) 
}
//作为方法被调用的时候,this 指向的是person对象 
person.add();

3、构造函数中的this的指向 
//构造函数中的this指向的值构造函数内部创建的this 
function createPerson(name,age,sex){ 
	this.name=name; 
	this.age=age; 
	this.sex=sex; 
}


4、函数的call(),apply()方法中的this指向 
const obj={ 
	name:'xiaoming' 
}
function fun1(){ 
	console.log(this); 
}
fun1.call(obj);//函数对象的call 函数中的this指向的是call()传入的对象 
fun1.apply(obj);//函数对象的apply 函数中的this指向的是apply()传入的对象 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值