var t1 = Boolean("");//返回false,空字符串 var t2 = Boolean("s");//返回true,非空字符串 var t3 = Boolean(0);//返回false,數字0 var t3 = Boolean(1),t4 = Boolean(-1);//返回true,非0數字 var t5 = Boolean(null),t6 = Boolean(undefined);//返回false var t7 = Boolean(new Object());//返回true,對象
再來看看Number():Number()與parseInt()和parseFloat()類似,它們區別在于Number()轉換是整個值,而parseInt()和parseFloat()則可以只轉換開頭的數字部分,例如:Number("1.2.3"),Number("123abc")會返回NaN,而parseInt("1.2.3")返回1、parseInt("123abc")返回123、parseFloat("1.2.3")返回1.2、parseFloat("123abc")返回123。Number()會先判斷要轉換的值能否被完整的轉換,然后再判斷是調用parseInt()或parseFloat()。下面列了一些值調用Number()之后的結果: Number(false) 0 Number(true) 1 Number(undefined) NaN Number(null) 0 Number("1.2") 1.2 Number("12") 12 Number("1.2.3") NaN Number(new Object()) NaN Number(123) 123 最后是String():這個以比較簡單了,它可以把所有類型的數據轉換成字符串,如:String(false)---"false"、String(1)---"1"。它和toString()方法有些不同,區別在于:
var t1 = null; var t2 = String(t1);//t2的值 "null" var t3 = t1.toString();//這里會報錯 var t4; var t5 = String(t4);//t5的值 "undefined" var t6 = t4.toString();//這里會報錯