用new 創建的對象的屬性能不能改寫并不是和get有關吧
function?foo()
{
}
Object.defineProperty(foo.prototype,'z',{value:1000});
var?obj=new?foo();
obj.z=10;
console.log(obj.z);//still?1000;這樣也是不能被改寫的
function?foo()
{
}
Object.defineProperty(foo.prototype,'z',{value:1000});
var?obj=new?foo();
obj.z=10;
console.log(obj.z);//still?1000;這樣也是不能被改寫的
2015-06-26
舉報
2016-04-25
Object.defineProperty(foo.prototype,'z',{value:1000});
通過這種方式定義的對象默認writable:false;
Object.defineProperty(new foo(),'z',{value:10});?就OK了。
2015-06-29
那個z是obj的原型的屬性,應該不能直接通過obj.z來修改他的值吧