這是某個課程中的一段範例 但不太明白為什麼會有這樣的結果
附上 codepen
https://codepen.io/UHU/pen/ExxOKey
如果 get 內設定 return this._name
在 line 19 更新 human.name 後
原先設定的預設值會被覆蓋並更新
但如果在 get 內設定 return 'string'
原先的預設值被覆蓋為 'string'
但是即使再度更新 human.name
被覆蓋為 'string' 的內容仍然不會被更新
這是為什麼呢?
get是你取得的資料,
如果你永遠return 'string',
那你拿到的就永遠是 'string',
get 是取得,(SELECT)
set 是設定.(UPDATE)
認真來說,不就是變數跟固定值的區分了??
我不太明白你搞不明白的地方哪邊??
return 'string';
後面那個就只是單純的固定字串,又不是變數。
無論如何你也不可能去改變它。
因為它又不是變數。
但從你的話中,你用了覆蓋的用語。
認真來說。那不是覆蓋。只是根本沒用它的值。
說真的,真無法理解這樣的東西。那之後的私域變數應用。常數、變異數、怪怪數....
你要怎麼辦啊。
怎麼會被一個「字串」就搞定了???