標籤:null res 1.2 變數 rip youdao bool XML value
JavaScript 是一種動態類型語言,變數沒有類型限制,可以隨時賦予任意值。 1.強制類型轉換強制轉換主要指使用Number、String和Boolean三個建構函式1.1 Number函數 (一種是參數是原始類型的值,另一種是參數是對象。)(1)原始類型值的轉換規則原始類型的值主要是字串、布爾值、undefined和null,它們都能被Number轉成數值或NaN。// 數值:轉換後還是原來的值Number(324) // 324// 字串:如果可以被解析為數值,則轉換為相應的數值Number(‘324‘) // 324// 字串:如果不可以被解析為數值,返回NaNNumber(‘324abc‘) // NaN// Null 字元串轉為0Number(‘‘) // 0// 布爾值:true 轉成1,false 轉成0Number(true) // 1Number(false) // 0// undefined:轉成 NaNNumber(undefined) // NaN// null:轉成0Number(null) // 0
Number函數將字串轉為數值,要比parseInt函數嚴格很多。基本上,只要有一個字元無法轉成數值,整個字串就會被轉為NaN。(2)對象的轉換規則簡單的規則是,Number方法的參數是對象時,將返回NaN,除非是包含單個數值的數值。Number({a: 1}) // NaNNumber([1, 2, 3]) // NaNNumber([5]) // 51.2 String()函數 (一種是參數是原始類型的值,另一種是參數是對象。)(1)原始類型值的轉換規則(2)對象的轉換規則String方法的參數如果是對象,返回一個類型字串;如果是數組,返回該數組的字串形式。String({a: 1}) // "[object Object]" String([1, 2, 3]) // "1,2,3"String方法背後的轉換規則,與Number方法基本相同,只是互換了valueOf方法和toString方法的執行順序。1.3 Boolean()函數除了以下六個值的轉換結果為false,其他的值全部為true。undefinednullfalse0或+0或-0NaN‘‘(Null 字元串)所有對象(包括Null 物件)的轉換結果都是true,甚至連false對應的布爾對象new Boolean(false)也是true。Boolean({}) // trueBoolean([]) // trueBoolean(new Boolean(false)) // true2.自動轉換(隱形轉換)* / 等等
js-20170612-資料類型轉換