菜鸡一只。拾前人牙慧,稍作补充解释。
数组去重
return Array.from(new Set(array))
ES6特性之Set,利用了Set不能有重复元素的特性,可以快速去重。
随机颜色
Math.floor(Math.random() * (2 << 23)).toString(16)
结果为rgba颜色值,需要配合#食用。
随机数
~~(Math.random()*10)
比 Math.floor() 写起来简单多了,缺点是无法控制最小值。
判断奇偶数
number % 2 == 0?"偶数":"奇数"
取最近的偶数
(999 | 1) - 1
相比先写if判断奇偶再-1是不是更直接~
除2取整
最基础Math.floor(5/2),或者用随机数方法写为~~(5/2),最快的方法5>>1,起码可以提高60%运行效率+26%编程效率。