JS高级(3)继承,ES5数组,字符串,对象新增方法

1.call()

call()可以调用函数
call()可以修改this的指向,使用call()的时候,参数1,是修改后的this指向,参数2、3传参。
举个🌰:
	function fn(x,y){
		console.log(x+y)
	}
	let o = { name : 'andy'}
	fn.call(0,1,2) 		此时函数中的this指向对象()

2.ES5新增方法

2.1.数组方法
2.1.1.forEach遍历数组
arr.forEach(function (value,index,array){
	参数1:数组元素(value)
	参数2:数组当前索引(index)
	参数3:当前的数组(array)
})
相当于数组遍历的for循环,没有返回值
2.1.2.filter过滤数组
let arr = [12,22,33,44]
let newArr = arr.filter(function(value,index,array){
	return value >= 20
})
console.log(newArr)  [22,33,44] 返回值是一个新数组
2.1.3.some 查找数组中是否有满足条件的元素
let arr = [10,30,4]
let flag = arr.some(function(value,index,array){
	return value < 3
})
console.log(flag)	//false
返回值是布尔值,只要找到满足条件的一个元素就立马终止循环。
2.1.4.map
let arr = [1,2,3,4,5]
let newArr = arr.map(function(value,index,array){
	return value + 1
})
console.log(newArr)		[2,3,4,5,6]
将数组中的每个元素调用一个提供的函数,结果返回一个新数组
2.1.5.every 查找数组中的所有元素是否满足条件
let arr = [1,2,3,4]
let newArr = arr.every(function(value,index,array){
	return value > 3
})
console.log(newArr)	//false
2.2.字符串方法
2.2.1.trim方法去掉字符串两端的空格
举个🌰:
	let str = ‘   那么  ’
	console.log(str.trim())		//那么,(会去掉两端的空格)
2.3.对象方法
2.3.1.获取对象的属性名
Object.keys(对象)	获取到当前对象中的属性名,返回值是一个数组
举个🌰:
	let obj = {
		id:1,
		name :'DW'
	}
	let result = Objet.keys(obj)
	consoloe.log(result)		[id,name]
2.3.2.设置或修改对象中的属性
Object.defineProperty(对象,修改或新增的属性名,{
	value:修改或新增的属性的值,
	writeable:true/false	如果为false,不允许修改这个值
	enumerable:false	如果为false,则不允许遍历,默认false
	configurable:false	如果为false,则不允许删除这个属性,属性是否可以被删除或是否可以再次修改特性
})
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值