typeof
函數驗證型態var test = 0
console.log(typeof(test)) // number
var test = 0
console.log(typeof(test)) // number
test = "string"
console.log(typeof(test)) // string
空值表示參考了一個無效的物件
var testNull = null
console.log(testNull) // null
如果你宣告了一個變數但未指定任何物件或是數值 則為 undefined
var testuUndefined
console.log(testuUndefined) // undefined
僅有 true, false 兩種狀態, 要注意的是 true and false 都必須是小寫
var testBool = true
console.log(testBool) // true
console.log(typeof(testBool)) // boolean
JavaScript 字串可以由單引號或是雙引號組成, 字串連接用 + 連接
var testString = 'test'
console.log(testString) // test
console.log(typeof(testString)) // string
console.log(testString + "test3") // testtest2
var testString = "test"
console.log(testString.length) // 4
var testString = 'test'
console.log(testString.charAt(0)) // t
console.log(testString.[1]]) // e
依照 ECMAScript 規範數字型別只有一種 可表達整數以及浮點數
var testNumber = 0
var testFloat = 3.14
console.log(testNumber)
console.log(testFloat)
console.log(typeof(testNumber)) // number
console.log(typeof(testFloat)) // number
console.log(Number.MAX_VALUE) // 1.7976931348623157e+308
console.log(Number.MIN_VALUE) // 5e-324
表示 Not a Number, 當計算錯誤得到此結果但 type 仍然是 number
var testNan = 0/0
console.log(testNan) // NaN
console.log(typeof(testNan)) // number
表示 number 的正無窮大與負無窮大, type 仍然是 numbe
console.log(Number.MAX_VALUE + 1e+292); // Infinity
console.log(1/0) // Infinity
console.log(typeof(1/0)) // number
console.log(-Number.MAX_VALUE - 1e+292); // -Infinity
console.log(-1/0) // -Infinity
console.log(typeof(-1/0)) // number
var b = true
console.log(b) // true
console.log(typeof(b)) // boolean
var b = Boolean(true)
console.log(b) // true
console.log(typeof(b)) // boolean
var b = new Boolean(true)
console.log(b) // Boolean {true}
console.log(typeof(b)) // object
console.log(typeof(Boolean(true))) // boolean
console.log(typeof(new Boolean(true))) // object
console.log(typeof(Number(123))) // number
console.log(typeof(new Number(123))) // object
console.log(typeof(String("str"))) // string
console.log(typeof(new String("str"))) // object