1.用感叹号将非布尔值转化为布尔值(感叹号可以把所有的东西都变成布尔值)
var str = "abc";
console.log(!str);
2.双波浪号的妙用,将内容转化为数字,或者小数取整(双波浪号的取整是直接去掉小数点后的小数)
var str = "123.123";
console.log(~~str);
3.数字保留小数点后N位
var num = 10 / 3;
~~(num*10000)/10000;
4.创建一个随机整数
eg:创建一个0-100以内的随机整数
var randNum = ~~(Math.random()*100);
5.String转化为Number
+'45'
+new Date
6.匿名函数的N种写法
!function(){}();
+function(){}();
-function(){}();
~function(){}();
~(function(){})();
void function(){}();
(function(){}());
7.抛弃你的if和else
// 普通的if-else模式
var isValid = false;
if (value && value !== 'error') {
isValid = true;
}
// 使用!!符号
var isValid = !!(value && value !== 'error');
8.Function构造函数
var f = new Function('a', 'alert(a)');
9.坚持链式调用(.end())
10.未定义值:
undefined: void 0