javascript - 引用对象数组中的对象标题

标签 javascript arrays object foreach

我有一个对象(下面的示例),我正在将其转换为数组,但转换代码删除了 key ,并且需要在以后的每个循环中引用该 key ,但我无法弄清楚如何保留该 key 。

 let json = {
    "6250": {
        "property1": "...",
        "property2": "..."
    },
    "6177": {
        "property1": "...",
        "property2": "..."
    },
    "5870": {
        "property1": "...",
        "property2": "..."
    },
    "4297": {
        "property1": "...",
        "property2": "..."
    },
    "5743": {
        "property1": "...",
        "property2": "..."
    }
}

function json2array(json){
    var result = [];
    var keys = Object.keys(json);
    keys.forEach(function(key){
    result.push(json[key]);
});
    return result;
}

var array = json2array(json);

array.forEach(function(elem, i) {
    Output.push(name, elem["property1"], elem["property2"]]);
});

例如,第一个循环中的“name”应该是 6250

最佳答案

Object.entries()似乎具有您需要的所有功能。它将为输入对象的每个属性返回一个 [key, value] 数组。这意味着输出将是一个二维数组。

let array2d = Object.entries(json);
array2d.forEach(function (elem) {
    Output.push(elem[0], elem[1].property1, elem[1].property2);
});

关于javascript - 引用对象数组中的对象标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56157625/

相关文章:

javascript - 使用逗号运算符链接多个函数定义

javascript - 如何检查对象是否是 Flow 类型的实例?

javascript - JS如何改造这个不规则对象

javascript - 访问数组中的某个对象

javascript - Object.create 复制数组和对象属性的引用

javascript - 调整窗口大小时切换图标的可见性

javascript - Meteor 中的全局应用程序数据

java - 元素不应重复

javascript - 查看字符串是否包含子字符串数组中的任何元素的最佳方法?然后如果匹配则替换

Java 如何创建唯一的对象名称?