簡體   English   中英

如何設置對象屬性的屬性?(js)

[英]How I can set property of object properties?(js)

我使用js,我想要對象屬性的set屬性

var a=42
Object.defineProperty(this,"a",{value:43} )//Error

如何在定義后設置對象屬性的屬性。

目前, a是原始類型( number )。 您可以更新它的其他任何變量:

 var a = 42; a = 43; console.log(a); 


如果需要對象,則有兩種選擇 - 將a定義為對象並更改value屬性,或將a重新分配a具有value屬性的對象。

方法一:

 var a = { value: 42 }; a.value = 43; console.log(a); 

方法2:

 var a = 42; a = { value: 43 }; console.log(a); 

要在javascript中擴展對象的屬性,可以使用Object已經擁有的prototype proterty。

所有javascript對象都是Object實例,並從Object.prototype繼承。 所以你可以擴展這個類的屬性,將屬性添加到javascript中的任何其他對象,如下所示:

var a = 42;
Object.prototype.getValue = 43;
document.write(a.getValue); // output should be 43.

這里看到j​​sfiddle示例。

對於Number這樣的對象,這是可能的:

 var a = new Number(42) a.value = 43 console.log( a.value ) 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM