
請問:為什么第一次列印輸出constructor構造器上會有weight:130;而第二次列印后輸出weight:130和constructor構造器;
如果不實體helson第二次列印輸出還是一樣的,麻煩那位前輩解釋一下?
uj5u.com熱心網友回復:
因為console.log()輸出物件或陣列時是在控制臺顯示一個物件或陣列的參考。就是說在用console.log()輸出陣列或物件時,物件(陣列)的屬性是折疊不顯示的。
如果你在console.log()輸出之后改變了物件(陣列)的屬性,當你點擊三角展開屬性時,會重新讀取物件(陣列)當前的屬性,也就是顯示出來的是你點擊三角展開時的屬性,而不是執行console.log()時的屬性。
uj5u.com熱心網友回復:
那請問我沒有賦值weight為什么前面還是能夠在構造器內顯示weight的值呢?uj5u.com熱心網友回復:
當你點擊三角展開屬性時,weight已經賦值了uj5u.com熱心網友回復:
這樣輸出就沒問題了console.log(Person.prototype.weight);
Person.prototype.weight = 130;
console.log(Person.prototype.weight);
uj5u.com熱心網友回復:
uj5u.com熱心網友回復:

在宣告Person 這個函式前你是否已經對這個建構式的原型添加了weight 屬性?
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/79784.html
標籤:JavaScript
上一篇:圖片自適應和不自適應的問題
下一篇:gulp的問題
