动态创建对象的变量

时间:2014-02-07 04:54:19

标签: javascript json

我正在使用json文件并将其重新组织为新格式的对象(与我正在阅读的json文件格式不同,因为我想以不同的方式对变量进行分组)所以我可以使用它。这需要使用事先未知的名称创建大量变量。

我可以在我的项目中动态创建一个新变量,如下所示:

object[variablename]

但是,我希望能够做到这样的事情

library[musicLibrary.Key].name = musicLibrary.alblum;

library[musicLibrary.Key].songs.[musicLibrary.title].name = musicLibrary.song;

我有什么方法可以做到这一点吗?

我当前的json循环代码如下所示:

var library = {}; 

for(var i = 0; i < musicList.songs.length; i++) {
//read json and reorganise it into a object
}

1 个答案:

答案 0 :(得分:1)

for(var i = 0; i < musicList.songs.length; i++) {
    var key = musicLibrary.Key;
    library[key] = library[key] || {};
    library[key]['name'] = musicLibrary.alblum;
    library[key]['songs'] = library[key]['songs'] || {};
    library[key]['songs'][musicLibrary.title] = library[key]['songs'][musicLibrary.title]  || {};
    library[key]['songs'][musicLibrary.title]['name'] = musicLibrary.song;
}