3
我有一個JSON結構;使用JSON數組的內容創建具有原型函數的JavaScript對象
{
books: [
{"id": "book1", "title": "Book One"},
{"id": "book2", "title": "Book Two"}
]
}
其中代表;
function BookList() {
this.books = new Array();
}
BookList.prototype.addBook = function(b) {
this.books[this.books.length] = b;
}
function Book(id, title) {
this.id = id || '';
this.title = title || '';
this.chapters = new Array();
}
Book.prototype.addChapter = function(c) {
this.chapters[this.chapters.length] = c;
}
在BookList中創建Book對象數組的最佳方法是什麼?
使用jQuery,您可以使用$.parseJSON(jsonData).books
來分配BookList數組並自動獲取屬性值,但不會使用原型函數創建所需的對象。
迭代JSON數組並單獨創建每個Book對象的唯一方法是?這個問題涉及從JSON創建特定的原型對象:Parse JSON String into a Particular Object Prototype in JavaScript。
我認爲這可以擴展到適用於具有正確迭代級別的BookList,並從那裏應用於Book對象的章節。
是否可以在初始分配後使用$.parseJSON
更改對象類型?
我試圖找到'.map'上的更多信息,但沒有發現任何有用的東西。有你知道的資源嗎?因爲函數調用中有很多範圍,所以工作得很好。我使用的對象比例子有更多的屬性,所以我剛剛使用'return $ .extend(new Book(),json);'這提供了我不搞亂的屬性名稱。謝謝。 – 2012-01-13 02:34:04
[map](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/map) – Raynos 2012-01-13 10:59:36