当前位置:  开发笔记 > 编程语言 > 正文

从Javascript中的两个嵌套数组中获取一个对象

如何解决《从Javascript中的两个嵌套数组中获取一个对象》经验,为你挑选了1个好方法。

我想从两个数组中获得一个对象,我是按照以下方式完成的.

for (var j = 0; j < rawDataRows.length; j++) {
        for (var i = 0; i < categories.length; i++) {
            var category = categories[i];
            var rowValue = rawDataRows[j];
            // here I do got the right value for category
            console.log(category); 
            console.log(rowValue);
            // but the following line doesn't interpret category as a variable
            formattedDataRows.push({category: rowValue});
        }
}

我假设我可以得到类似的东西:

[{"category1": "value1"},{"category2": "value2"}, {"category3": "value3"}]

然而,事实证明我得到了:

[{"category": "value1"}, {"category": "value2"}, {"category": "value3"}]

谁能指出我错在哪里?此外,如果您有更好的方法来实现目标,请发表评论.Javascript只有jQuery或其他框架.谢谢!



1> 小智..:

对象文字语法在ECMAScript 5及更低版本中,您不允许将变量标识符指定为属性名称.而是首先创建对象,然后使用括号表示法.

var o = {};
o[category] = rowValue;
formattedDataRows.push(o);

使用ECMAScript 6,您可以执行以下操作:

formattedDataRows.push({[category]: rowValue});

虽然当然对语法的支持是有限的.

推荐阅读
手机用户2402852387
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有