1樓:troy351
// 宣告乙個物件
const
obj=
{};// 資料屬性
Object
.defineProperty
(obj
,'data',);
// 等價於
obj.
data=0
;// 訪問器屬性
Object
.defineProperty
(obj
,'accessor',,
get()
,configurable
:true
,enumerable
:true
});回答問題
一樣2. 因為資料屬性儲存值,訪問器屬性不儲存值(由上方例子可以看到,accessor實際是在操作data。換句話說,此時data屬性和accessor屬性永遠是相等的)。
這就意味著:
value和set/get不能共存。因為有了set/get同時又有value,那讀取是讀value還是get?寫入是寫value還是set?
訪問器屬性沒有writable,因為其實際不儲存值也就無所謂能否寫入。實際上只設定get不設定set就無法賦值了
3. 參考最上方的例子,obj上既有資料屬性又有訪問器屬性。
結果如圖
JavaScript為什麼要加 0 呢?作用是什麼?
廖昆勇 因為除了getById之外,其他返回獲取dom的方式都是返回array,即使整個頁面只有乙個元素用到某個class,也會返回array,想要獲取該元素的話,就是等於從返回的array裡獲取第乙個元素,所以要加 0 咖啡貓和程式設計師 因為你寫的是getElements不是getElement...
人為什麼要分年齡?為什麼要分美醜?
夏天的書 我想人生下來是必有一死的,人無論是樂觀悲觀也罷,經常是對自己的人生有著這樣那樣的美好期待,但是只有希望和憧憬是不夠的 偶爾會在睡前反思自己,離我的夢想還有多遠?我還有多少時間來著。如果我是長生的,那麼我覺得也許我都不會想要實現自己的夢想了,也不想要努力或者十分辛苦的克服困難,解決問題了。正...
為什麼JavaScript裡面typeof null 的值是 object ?
自由的囚徒 這是JS語言本身的乙個bug。不同的物件在底層都表示為二進位制,在js中二進位制前三位都為0的話會被判斷為object型別,null的二進位制表示全是0,自然前三位也是0,所以執行typeof時返回 object 阿布丁 說句人話,不說書裡的鬼話 因為 所有引用型別的名字是乙個指標,指的...