js扩展运算符,神奇的3个点点,数组去重、合并数组等等

41次阅读

共计 691 个字符,预计需要花费 2 分钟才能阅读完成。

最近 lz 一周排了 9 个面试,面试经常被问到一些数组的问题,比如说 es6 里面一些数组去重、合并数组,之前压根就没了解过,后来才知道考的都是 es6 的知识,今天好好挖掘一下,发现一个神奇的点点三姐妹
我们来看看经常使用的方法
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’]

正文完
 0