我已經看到了在模塊模式中實現getters/setter的兩種不同方式。一個使用「defineProperty」,而另一個不使用。一個與另一個的優點/缺點是什麼?模塊模式中get/set和Object.defineProperty之間的區別
var MyModule = (function() {
var _val;
var api = {
get value1() {
return _val
},
set value1(value) {
_val = value
}
};
Object.defineProperty(api, 'value2', {
get: function() {
return _val;
},
set: function(value) {
_val = value
}
});
return api;
}());
https://plnkr.co/edit/TbJSD4noZTew8II83eTH?p=preview