使用JS getter和setter方法,我的目標,以創建下列API的情況:ES6:如何擁有一個getter /爲對象和setter其屬性
// the user should be able to write this to update thing
thing = {
x: 1,
y: 2
}
// OR they should be able to write this
thing.x = 1
thing.y = 2
現在我用這樣的代碼:
get thing() {
return {
x: this._thing.x,
y: this._thing.y
};
}
set thing(value) {
this._thing.x = value.x,
this._thing.y = value.y
}
這支持第一種情況,但不支持第二種情況。
這可以以任何合理簡單的方式完成嗎?
編輯:我將鍵入一個例子,但是這樣的用例可能是thing.x
和thing.y
應該總是使用Math.round()
四捨五入爲整數。
你看過如何定義類。 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes – funcoding
'thing'返回一個新對象。 –
是的,這是一個類的一部分。還是你建議我把類變成一個類實例?因爲,在我的項目中,它已經是,實際上...... – suncannon