JS類型轉(zhuǎn)換奇技淫巧
很酷炫有木有W蚍病n砣弧蔬崩!因?yàn)榭勺x性低,所以有些技巧并不提倡使用搀暑。但遇見別人這樣寫沥阳,得看得懂是怎么一回事!
轉(zhuǎn)布爾型
!!'' //=> false
!!null //=> false
!!undefined //=> false
!!NaN //=> false
!!0 //=> false
!!1 //=> true
!!-1 //=> true
!![] //=> true
!!{} //=> true
!!window //=> true
!!Infinity //=> true
轉(zhuǎn)字符串
'' + 123 //=> '123'
'' + true //=> 'true'
轉(zhuǎn)數(shù)值型
+new Date //=> 1456480246437
+'123' //=> 123
向下取整
~~3.4 //=> 3
3.4|0 //=> 3
-3.4^0 //=> -3
-3.4 >> 0 //=> -3
indexOf判斷
var arr = [1,2,3];
if(!~arr.indexOf(4)){
arr.push(4);
}
!!~arr.indexOf(1) //=> true
!!~arr.indexOf(5) //=> false
類數(shù)組轉(zhuǎn)數(shù)組
var arrLike = {0:'abc',1:'xyz',length:2};
Array.prototype.slice.call(arrLike) //=> ['abc','xyz']
//常用 Array.prototype.slice.call(arguments)