js中的奇技淫巧

类型强制转换

string强制转换为数字:可以使用(+)或者(1)转换字符串为数字
*object强制转换为string: (字符串+object)的方式来转换对象为字符串[本质是调用.toString()方法]
*boolean过滤数组中所有的假值:

const compact = arr.filter(Boolean)
compact([1,2,3,false,null,'a',NaN,'s']) //[1,2,3,'a','s']

*双位运算符:~~可以用来代替Math.floor()【向下取整】
*tips:对于负数来说就不相同了

Math.floor(7.8) === 7 //true
//可以简写为
~~7.8 === 7//true

*短路运算符:&& ||
|| 可以给变量赋值、初值,&&可以防止param为undefined时的报错

let result = param && param.prop

*取整( |0) num | 0 对整数或负数同样适用

1.5|0 //1
-1.7|0 //-1

*判断奇偶数 (&1)

const num = 4;
num&1  //0
num%2 //0  
//奇数是1

你可能感兴趣的:(js中的奇技淫巧)