我分析JavaScript的數據類型,我發現非常奇怪的事情:JavaScript的空值 - 它是一個對象
> typeof null
"object"
> null instanceof Object
false
目前我還是不知道我怎麼能解釋。我認爲typeof === "object"
的所有產品在原型鏈中都有Object.prototype
。如果null
不是object
,那麼爲什麼typeof
會返回?
PS有人已經給我寫歡迎的JavaScript的古怪的世界;)
http://stackoverflow.com/a/7968470/594589 – dm03514
在一個稍微有關說明,看看'的Object.create(空)' – SLaks
@SLaks是略有不同,但是,因爲你說「新對象的原型不應該是任何東西」,並且「Object.create(null).__ proto__」實際上被設置爲「null」。 –