使用左移运算迅速得到2的n次方
1 << 2 // --> 4
1 << 3 // --> 8
1 << 4 // --> 16
快速切换0和1
let toggle = 0;
toggle ^= 1; // toggle:1
toggle ^= 1; // toggle:0
toggle ^= 1; // toggle:1
快速取整
~~3.14 //3
3.14 >> 0 //3
3.14 << 0 //3
3.14 | 0 //3
快速判断符号是否相同
(3 ^ -5) >= 0 //false 符号不同
(-3 ^ -5) >= 0 //true 符号相同
(3 ^ 5) >= 0 //true 符号相同
(3 ^ -5) >= 0 //false 符号不同
快速判断是否是2的整数幂
const isPowerOf2 = (n) => (n & (n - 1)) === 0;
isPowerOf2(4); //true
isPowerOf2(15); //false
isPowerOf2(256); //true
[?? 空值合并运算符 ] 设置对象默认值
let obj={
n:{
m:"aaa"
}
} // obj.n?.m ?? "默认值"