提高效率的JS小技巧

300 阅读1分钟
1、过滤数组唯一的值
ES6引入了Set对和延展(spread)语法...,我们可以用他们来创建一个只包含唯一值的数组
const array = [1,2,5,3,5,5,8,2]
const arr = [...new Set(arr)];
console.log(arr);//[1,2,5,3,8]

2、获取数组最后的元素
数组的slice()方法可以接受负整数,并从数组的尾部开始获取元素。
let array = [0,1,2,3,4,5,6,7,8,9];
console.log(array.slice(-1));//[9]
console.log(array.slice(-2));//[8,9]
console.log(array.slice(-3));//[7,8,9]

3、取整|0
对于一个数字| 0可以取整,负数也同样可以用。num | 0
1.2 | 0  //1
-1.8 | 0 //-1

4、数组扁平化
var array = [1,2[3,6],[8,9],5];
var arr = [].concat(...array)
console.log(arr);//[1,2,3,6,8,9,5]

5、缩短条件语句
//缩短前
if(show){
add()
}
//修改后
show && add()

6、数组截断
主要用来锁定数组的大小,如果用于删除数组中的一些元素来说,是非常有用的。例如,你的数组有10个元素,但你只想只要前五个元素,那么你可以通过array.length=5来截断数组。如下面这个示例:
var array = [1,2,3,4,5,6];
console.log(array.length); // 6
array.length = 3;
console.log(array.length); // 3
console.log(array); // [1,2,3]

7、数组元素的洗牌
对于数组元素的洗牌,只要这样做:
var list = [1,2,3];
console.log(list.sort(function() { Math.random() - 0.5 })); // [2,1,3]