在JavaScript 中將普通物件轉換為類別實例
在JavaScript 中,當從伺服器接收普通物件作為JSON 回應時,您可能會遇到需要將它們轉換為類型化的類別實例。這允許您存取特定於類別的方法和屬性。
解決方案:
一種方法是建立一個建構函數,該構造函數接受任何類似於實例的物件並複製它。或者,您可以實現將物件轉換為實例的靜態方法:
<code class="javascript">Person.fromJSON = function(obj) { // Custom code to create an instance from the object return ...; };</code>
對於您的特定場景,如果您有具有公共屬性的普通對象,您可以使用以下方法:
<code class="javascript">var personInstance = new Person(); for (var prop in personLiteral) { personInstance[prop] = personLiteral[prop]; }</code>
這會將普通物件的所有屬性指派給新建立的實例。同樣,您可以建立 Animal 實例。
注意:
範例程式碼:
<code class="javascript">var persons = JSON.parse(serverResponse); for (var i = 0; i < persons.length; i++) { persons[i] = Object.assign(new Person(), persons[i]); // Use Object.assign for browsers that support it for (var j = 0; j < persons[i].animals; j++) { persons[i].animals[j] = Object.assign(new Animal(), persons[i].animals[j]); } }</code>
此程式碼將使您能夠使用特定於類別的方法,例如Persons[0].Animals[2] .Run();.
以上是如何在 JavaScript 中將普通 JSON 物件轉換為類別實例?的詳細內容。更多資訊請關注PHP中文網其他相關文章!