ES6---数组

在ES6中数组增加了许多的新方法,下面我将介绍这些新方法

1.扩展运算符(spread)

扩展运算符 就是 三个点(…)。
他的作用可以将一个数组 转化成 参数序列,下面介绍扩展运算符的应用
扩展运算符对于拷贝对象的第一层,属于深拷贝;对于拷贝对象更深层次,则属于浅拷贝
(1)复制数组

		1.用普通的方法直接赋值
		const a1 = [1,2];
		const a2 = a1;
		a1[0] = 8;
		console.log(a1,a2); 打印的都是[8,2]
		
		2.使用es5中的拼接方法复制
		const a1 = [1,2];
		const a2 = a1.concat();
		a1[0] = 8;
		console.log(a1,a2); 打印 [8,2][0,2]
		
		3.使用es6 扩展运算符
		const a1 = [1,2];
		const a2 = [...a1];
		a1[0] = 8;
		console.log(a1,a2); 打印 [8,2][0,2]

从上面的代码可以看出,当我直接让a1 = a2的时候,a2会随着a1的改变而改变,使用concat()和 es6中的(...)扩展运算符 可以复制数组 进行一次深拷贝;a2就不会受到a1的改变而影响

(2)合并数组

	1.使用concat拼接三个数组 
		const arr1 = [1, 2];
		const arr2 = [3];
		const arr3 = [4, 5];
		arr1 = arr1.concat(arr2, arr3);
		console.log(arr1); [1234, 5]
	2.使用扩展运算符(...)拼接数组	
		const a1 = [1,2,3,4];
		const a2 = [5];
		const a3 = [...a1,...a2];
		console.log(a3); [1,2,3,4,5]
	3.使用扩展运算符(...)拼接数组
		const a1 = [1,[2]];
		const a2 = [3];
		const a3 = [...a1,...a2];
		a1[0] = 8;
		a1[1][0] = 8;
		console.log(a3); [1,[8],3]

使用concat和扩展运算符都可以进行拼接数组(都是只进行一次深拷贝)
(3)扩展运算符还可以将字符串转为数组

2.Array.from()

3.copyWithin()

4.find(),findIndex(),findLast(),findLastIndex()

5.fill()

6.entries(),keys(),values()

7.flat(),flatMap()

8.at()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值