用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來修改他的值吧