繁体   English   中英

如何将一堆数组转换为单个对象?

[英]How to convert a bunch of arrays into a single object?

我在做什么:

onClick,获取详细的直接子节点并将其发布在html上。 状态=完成//效果很好

现在,我正在使用一堆数组来完成此操作。

node.eachSubnode(function(node) {
                   title[title.length] = node.name; // This is what i want to modify
                   data[data.length] = node.data; // This is what i want to modify
                });

它们当前的外观如下:

title = ['Coffee', 'Tea'];
data = ["Americans", "Britishers"]; // i use a loop to iterate through these arrays and append to html.

这就是我想要的:

var preference = {
title: 'Coffee',
data: 'Americans'
},
{
title: 'Tea',
data: 'Americans
}

我想使用node.eachSubnode循环创建它。

我不确定我是否理解正确,但是我认为这是您想要的:

var preferences = [];

node.eachSubnode(function(node) {
    preferences.push({
        title: node.name,
        data: node.data.germ
    });
});

您不能创建看起来像这样的对象,我认为您需要一个包含对象的数组。 假设您的节点是具有length属性的数组,则此方法最快

var preference = new Array(node.length||0), i = 0;
node.eachSubnode(function(node) {
    preference[i++] = {
        title: node.name,
        data: node.data.germ
    };
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM