2
我試着通過Object.assign
來定義構造函數getter和setter:Object.assign getter和setter方法在構造
function Class() {
Object.assign(this, {
get prop() { console.log('call get') },
set prop(v) { console.log('call set') },
});
}
var c = new Class(); // (1) => 'call get'
console.log(c.prop); // (2) => undefined
c.prop = 'change';
console.log(c.prop); // (3) => 'change'
問題:
(1)爲什麼調用getter時?
(2)爲什麼不調用getter?
(3)爲什麼setter被忽略?