如何创建具有字符串索引的二维对象并循环遍历结果

How to create a 2 dimensional object with string index and loop through results

本文关键字:对象 二维 循环 结果 遍历 索引 创建 何创建 字符串      更新时间:2023-09-26

我有一个语法问题。我一直在浏览数百篇关于多维对象和数组的帖子,但找不到我想要的东西。我基本上需要用一堆预设填充数据库,并且正在寻找一种方法在数组(或 2d 对象)中设置这些预设,以便我可以循环访问它们并将它们插入数据库。

数据是对象及其附件的简单列表,即:

Door ->   Handle
          Letterbox
          Cat Flap
          Hinges
          Lock
Window -> Sill
          Frame
          Lock
          Handle

等。

然后,我想要一个这样的函数(其中"items"是保存所有数据的对象),它循环遍历结果并插入项目和附件:

for (var i = 0; i < items.length; i++) {
    var item = items[i];
    insertItem(item,'','Object');
    for (var b = 0; b < item.length; b++) {
        var accessory = item[b];
        insertItem(item,accessory,'Accessory');
    }
}
我的

问题是,如何将我的数据放入对象中,我的循环函数是否可以循环访问数据?

也许您可以使用对象文字?

var house = new Object();
    house = {
        "door" : {
            "handle" : true,
            "letterbox" : true,
            "catFlap" : true,
            "hinges" : true,
            "lock" : true
        },
        "window" : {
            "sill" : true,
            "frame" : true,
            "lock" : true,
            "handle" : true
        }
    };

然后你可以通过for...in循环访问它

for(var item in house){
    for(var accessory in house[item]){
        if(house[item][accessory]){ //announce what was found
            alert(accessory); 
        }
        house[item][accessory] = false; //take accessory away
        house[item].newAccessory = true; //Add an accessory
    }
}