js基礎(四) toString()方法和valueOf()方法

在總結toString()方法和valueOf()方法以前先來講一下強制轉換。強制轉換有三種:Boolean()、Number()、String()。函數

1.Boolean()spa

當要轉換的值是至少有一個字符的字符串、非 0 數字或對象時,Boolean() 函數將返回 true。若是該值是空字符串、數字 0、undefined 或 null,它將返回 false。code

var b1 = Boolean("");		//false - 空字符串
var b2 = Boolean("hello");		//true - 非空字符串
var b3 = Boolean(50);		//true - 非零數字
var b4 = Boolean(null);		//false - null
var b5 = Boolean(0);		//false - 零
var b6 = Boolean(new object());	//true - 對象

2.Number()對象

Number() 函數的強制類型轉換與 parseInt() 和 parseFloat() 方法的處理方式類似,只是它轉換的是整個值,而不是部分值。用 Number() 進行強制類型轉換,"1.2.3" 將返回 NaN,由於整個字符串值不能轉換成數字。若是字符串值能被完整地轉換,Number() 將判斷是調用 parseInt() 方法仍是 parseFloat() 方法。ci

結果 用法
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(50)     50

3.String()字符串

要執行String(),只須要調用做爲參數傳遞進來的值的 toString() 方法,即把 12 轉換成 "12",把 true 轉換成 "true",把 false 轉換成 "false",以此類推。String()和toString() 方法的惟一不一樣之處在於,對 null 和 undefined 值強制類型轉換能夠生成字符串而不引起錯誤。table

下面來講明toString()方法和valueOf()方法object

相關文章
相關標籤/搜索