null 是一個javascript字面量,表示空值,就是沒有對象被呈現.他是javascript原始值之一.null值常被放在指望一個對象上,可是不引用任何對象的參數位置,也就是說對象的初始化.javascript
咱們看下面的一個例子java
var obj = null; console.log(typeof obj === "object"); // true
咱們經過對null的命名描述來理解,null是被指望在一個對象上,可能在javascript的規範中設這麼設定的.因此返回一個true.其實null自己就是一個字面量了,返回null便可,爲啥還返回object呢?這應該是規範中存在的BUG吧.web
可是要值得注意的是,null與undefined是不一樣的.undefined是全局變量的一個屬性.面試
當檢測null或者undefined時,注意相等(==)與全等(===)兩個操做符的區別(前者會執行類型轉換),因此咱們在設定JAVASCRIPT編寫規範中,加入當作比較時,使用全等操做符(===),試試執行下面的代碼理解.微信
null === undefined // false null == undefined // true
因此你們必定要理解這兩點.這些有可能在代碼作判斷的時候犯錯誤,也是面試工做中,常出的問題.3d
本文屬於吳統威的博客,微信公衆號:bianchengderen,QQ羣:186659233 的原創文章,轉載時請註明出處及相應連接:http://www.wutongwei.com/front/infor_showone.tweb?id=162 ,歡迎你們傳播與分享.code