功能强大的扩展运算符 [...]

主要介绍

扩展运算符...是es6的一种新特性(当然现在es6也不算新啦),作用是将一个数组转化为用逗号分隔的参数序列。

用了几次这个es6新特性后发现这个方法真的很强大很实用,于是在下面总结了一些比较实用的功能。

使用语法

扩展运算符之后可以直接跟一个数组或者是小括号括起来的一个表达式,甚至可以是一个函数,但是函数的返回值必须是一个数组。

console.log(...[1, 2, 3]);

console.log(...(x>1?[3,6,9]:[2,4,6]))


const test=()=> [1,2,3];
console.log(...test())

注:当扩展运算符...后跟的是一个空数组,则不会产生任何效果。

实用功能

1.数组去重

[...new Set(arr)]

2.获取数组最大值最小值

Math.max(...[1,2,3,5,-23,12])   //12
Math.min(...[1,2,3,5,-23,12])    //-23

3.将Unicode字符转化为普通字符

console.log([...'\u8001\u53f8\u673a'])

//["老", "司", "机"]

4.实现数组的深度复制或合并

let arr1=[5,6,7],
    arr2=[9,6,3];

let newArr=[...arr];
newArr=[...arr1,...arr2]

5.获取函数不定参数个数

const fn = (...arr) => arr.length;

console.log(fn(3,2,4,5));   //4

console.log(fn(1,2));   //2

END

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值