js 中的類型比較
阿新 • • 發佈:2017-12-22
ber 結果 function body efi symbol [] undefine 鍵值
console.log(typeof 1) // number console.log(typeof ‘cc‘) // string console.log(typeof true) // boolean console.log(typeof undefined) // undefined console.log(typeof null) // object console.log(typeof NULL) // undefined NULL | Null 都不對 console.log(typeof {}) //object console.log(typeof []) // object console.log(typeof function(){}) // function 這個有點意料之外,本以為也是 object
console.log(typeof Symbol()) // symbol
// 結論:
// 基於多鍵值進行排序的時候或許可以用一下 // boolean < function < number < object(null) < string < symbol < undefined // 以下:皆 true console.log(typeoftrue < typeof function(){} ? true : false); console.log(typeof function(){} < typeof 1 ? true : false); console.log(typeof 1 < typeof {name:‘cc‘} ? true : false); console.log(typeof {name:‘cc‘} === typeof null ? true : false); console.log(typeof {name:‘cc‘} < typeof‘cc‘ ? true : false);
console.log(typeof ‘cc‘ < typeof Symbol() ? true : false); console.log(typeof Symbol() < typeof undefined ? true : false);
- typeof 返回值是小寫
- null 小寫,NULL Null 這些寫法不對
- 函數 typeof 返回值是 function。疑惑臉:什麽時候 function 是一個類型了?
- 這樣說吧: typeof 是一個運算符,返回結果並不等同於 js 基本類型 (null 不等, function 看來也是)
- js 中基本類型:
boolean number object (Object | Function | Array | RegExp | Date | ..) null string undefined symbol (ES6 新增)
- typeof 的返回值:
boolean number
string object (object | array | null)
function undefined symbol
js 中的類型比較