js中的小技巧
~~
- 用于数字取整
- undefined null NaN 都会变成 0
1
console.log(~~(11.11)); // 11
&
- 判断奇偶
- undefined null NaN “” 都会变成 0
1
2console.log(7 & 1); // 1
console.log(8 & 1) ; // 0
!!
- 转换布尔值
- undefined null NaN 0 “”都会变成 false
- [] {} 会变成 true
1
2
3
4
5console.log(!!7); // true
console.log(!![]); // true
console.log(!!{}); // true
console.log(!!null); // false
console.log(!!undefined); // false
>>
- 左位移一等于乘二
- 右位移一等于除二
- undefined null NaN “” 都会变成 0
1
2console.log(16 >> 1); // 8
console.log(16 << 1); // 32
清空数组
1 | let arr = [1]; |
生成随机数
1 | 0 | Math.random() * 100 |
生成随机字符串
1 | // .substring() 的第二个参数控制取多少位 (最多可取13位) |
创建链接
1 | console.log("Google".link("www.google.com")); // <a href="www.google.com">Google</a> |
快速判断IE8以下的浏览器
1 | var isIE8 = !+"1"; |
正确处理异常的方法
1 | try { |
参考
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 LiuYuanhua!
评论