一、强制类型转换
1.1 string强制转换为数字
1 | //可以用*1来转化为数字((实际上是调用.valueOf方法) 然后使用Number.isNaN来判断是否为NaN,或者使用 a !== a 来判断是否为NaN) |
1.2 使用Boolean过滤数组中的所有假值
1 | const compact = arr => arr.filter(Boolean) |
1.3 数值取整 –去除小数点后面的值
1 | ~~2.33 |
1.4 判断奇偶数,负数同样适用
1 | const num=3; |
JS|| && 妙用 多重if else 选择情况
1 | /** |
二、函数
2.1 惰性载入函数
1 | //这个判断依据在整个项目运行期间一般不会变化,所以判断分支在整个项目运行期间只会运行某个特定分支,那么就可以考虑惰性载入函数 |
2.2 动态添加js
1 | //动态添加js |
三、数组
3.1 reduce方法同时实现map和filter
1 | const numbers = [10, 20, 30, 40]; |
五种方法实现值交换
1 |
|
去掉小数部分
1 | parseInt(num) |
判断x是否是整数
1 |
|
数组去重
1 | // ES6 |
数组最大值
1 | function maxArr(arr) { |
数组最小值
1 | function minArr(arr) { |
随机获取数组的一个成员
1 | function randomOne(arr) { |
产生随机颜色
1 | function getRandomColor() { |
随机生成指定长度字符串
1 | function randomStr(n) { |
深拷贝
1 | JSON.parse(JSON.stringify(obj)) |
#####