var obj={x:1}之后var obj=new foo(); 那obj之前的x屬性不是沒有了嗎??
var obj={x:1};
function foo(){};
foo.prototype.z=3;
cosole.log(obj.x);
console.log(obj.z);
obj的x屬性不是應該沒有了嗎?
var obj={x:1};
function foo(){};
foo.prototype.z=3;
cosole.log(obj.x);
console.log(obj.z);
obj的x屬性不是應該沒有了嗎?
2016-12-12
舉報
2017-09-29
如果想要達到老師所描述的效果的話,應該是這樣的
2016-12-12
var obj={x:1};var obj=new foo();變量obj會被申明提前,按照JS的執行順序,首先變量obj被賦值為一個對象,繼續執行obj又被賦值為一個foo函數,自然而然就代替了之前被賦值的對象,故obj之前的X屬性也會被覆蓋