数组去重+扁平化
数组扁平化
arr.flat() //可以在flat添加可选值Infinity
arr.toString.split(,)
数组去重
Array.from(new Set(arr))
[...new Set(arr)] // 先扁平化在来去重
数组元素变为number类型
arr.map(Number)
知识补充
扩展运算符 ...
任何定义了遍历器(Iterator)接口的对象,都可以用扩展运算符转为真正的数组。
let arrayLike = {
'0': 'a',
'1': 'b',
'2': 'c',
length: 3
};
// 因为没有部署Iterator接口,扩展运算符无法将其转化为数组
let arr = [...arrayLike]; // TypeError: Cannot spread non-iterable object.
但arr.from()可以转换含有length属性的对象来弥补这个缺陷(所谓类数组的对象,本质特征只有一点,即必须有length属性。)
Array.from({ length: 3 });// [ undefined, undefined, undefined ]