對所有對象都有__proto__這句話有疑惑
var a = {}罗晕,這個a有__proto__屬性,
如果是這樣創(chuàng)建對象:
var b = Object.create(null)
b是沒有__proto__這個屬性的赠堵,但b是對象小渊!
想問下有人知道為什么嗎!
最詳盡的 JS 原型與原型鏈終極詳解茫叭,沒有「可能是」酬屉。(一)第二篇已更新,點擊進入第三篇已更新揍愁,點擊進入 三篇文章都更新完畢呐萨,完整的剖析了 JS 原型與原型鏈,希望通過這些教程能讓你對 Javascript 這門語言理解的更透徹莽囤! 一...
關于第二大點谬擦,
“這兩個實例都有一個 constructor (構造函數(shù))屬性,該屬性(是一個指針)指向 Person“
“ console.log(person1.constructor == Person);//true“
“console.log(person2.constructor == Person); //true”
我覺得這里的說法有點出入
如果直接打印person1和person2對象朽缎,就會發(fā)現(xiàn)并沒有發(fā)現(xiàn)有constructor屬性惨远。打印內(nèi)容如下
{age:28
job:"Software Engineer"
name:"Zaxlct"
sayName:? ()
__proto__:Object}
那為什么person1.constructor == Person 這個會是true,實際是因為在person1中沒有找到constructor屬性话肖,順著__proto__往上北秽,找到了Person.prototype,而在這里才找到的constructor最筒,而這個constructor是指向Person的贺氓,所以結果才會是true
但是這并不能說是實例上有一個constructor屬性,我覺得這容易產(chǎn)生誤解床蜘。
以上是個人觀點辙培,有錯誤請指正,謝謝邢锯。
Java是一種可以撰寫跨平臺應用軟件的面向對象的程序設計語言擎鸠。Java 技術具有卓越的通用性、高效性缘圈、平臺移植性和安全性劣光,廣泛應用于PC、數(shù)據(jù)中心准验、游戲控制臺赎线、科學超級計算機...
《Java從小白到大藕ィ》紙質版已經(jīng)上架了!5呃琛另锋! Java誕生到現(xiàn)在已經(jīng)有20多年了,但是Java仍然是非常熱門的編程語言之一狭归,很多平臺中使用Java開發(fā)夭坪。表1-1所示的是TI...