es6 扩展运算符 三个点

扩展语法。对数组和对象而言,就是将运算符后面的变量里东西每一项拆下来。
这个东西可以在函数定义的地方使用,比如使用func(…args)将函数传入的参数都放到args数组里。
1、数组去重
之前的想法可能要遍历数组去重,但是现在又es6的骚操作

var a = [1,1,2,3]
Array.from(new Set()) // 利用es6特性去重方法
[...new Set(arr)]  // 利用js扩展运算符的骚操作

2、将一个数组放入另一个数组(打散数组)

var a = [1,2]
var b = [a,3,4]
console.log(b) // [[1,2],3,4]
 
// 如果使用扩展运算符
var b = [...a, 3,4]
console.log(b) // [1,2,3,4]

3、复制数组(不会改变原数组)

var a = ['1','2','3']
var b = [...a]
console.log(b) // ['1','2','3']  

a数组中的元素扩展为单独元素被分配到b中,可以随意改变b数组,且不会对a产生影响。
4、 拼接数组(替换concat)

var a = [1,2,3]
var a = [4,5,6]
a  = [...a, ...b]
console.log(a) // [1,2,3,4,5,6]

5、 Math

var a = [1,2,3,4,5]
var max = Math.max(...a)
console.log(max) // 5

6、字符串转换为数组

var a = 'helloworld'
var b = [...a]
console.log(b) // ['h','e','l','l','o','w','o','r','l','d']

7.通过push函数,将一个数组添加到另一个数组的尾部

// ES5的 写法
var arr1 = [0, 1, 2];
var arr2 = [3, 4, 5];
Array.prototype.push.apply(arr1, arr2);
 
// ES6 的写法
var arr1 = [0, 1, 2];
var arr2 = [3, 4, 5];
arr1.push(...arr2);

8.合并数组

// ES5的合并数组
arr1.concat(arr2, arr3);
// [ 'a', 'b', 'c', 'd', 'e' ]
 
// ES6的合并数组
[...arr1, ...arr2, ...arr3]
// [ 'a', 'b', 'c', 'd', 'e' ]
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值