get set 不能和value同时使用。
那么就是说 get和set的时候都是在操作别人,不能操作自己。多了一个别人
var book={}
我想像中的用法:
Object.defineProperty(book,"year",{ value:2014, get: function() { return this.year; }, set: function(value) { this.year=value; } });
这么多么节约内存啊。。操作的是自己,操作自己,操自己。。
而现实是:
目前的用法:
var book = { _year: 2014, }; Object.defineProperty(book,"year",{ get: function() { return this._year; }, set: function(value) { this._year=value; } });
操作的是别人,操作别人,操别人。。
如果key超级多,那么需要为每个key额外增加对应的操作器。。。
var book = { _year1: 2014, _year2: 2014, _year3: 2014, _year4: 2014, _year5: 2014, _year6: 2014, _year7: 2014, ... .... };
是不是不太合理。。? 能写个函数统一处理吧?能的话 也是多个函数啊。
米琪卡哇伊
相关分类