我有一个JSON文件需要迭代,如下所示...

{
    "device_id": "8020",
    "data": [{
        "Timestamp": "04-29-11 05:22:39 pm",
        "Start_Value":  0.02,
        "Abstract": 18.60,
        "Editor": 65.20
    }, {
        "Timestamp": "04-29-11 04:22:39 pm",
        "End_Value":  22.22,
        "Text": 8.65,
        "Common": 1.10,
        "Editable": "true",
        "Insert": 6.0
    }]
}

数据中的键并不总是相同的(我刚刚使用了示例,有20个不同的键),因此,我无法设置脚本以静态引用它们来获取值.

否则我可以说

var value1 = json.data.Timestamp;
var value2 = json.data.Start_Value;
var value3 = json.data.Abstract;
etc

过go 我在数据 node 上使用了一个简单的foreach循环...

foreach ($json->data as $key => $val) {
    switch($key) {
        case 'Timestamp':
            //do this;
        case: 'Start_Value':
            //do this
    }
}

但我不想阻止脚本.有什么 idea 吗?

推荐答案

可以通过以下方式迭代JavaScript对象:

for(var attributename in myobject){
    console.log(attributename+": "+myobject[attributename]);
}

myobject可以是你的json.数据

Node.js相关问答推荐

容器端口是容器内 node 应用程序的端口吗?

为什么这个verifyToken函数从未被调用过?

如何在 Firestore 函数上使用类型模型来获取字段值

我正在try 在公共目录中使用 Express.js 项目部署 Angular 静态构建

为什么 nginx 不将我的 react index.html 作为后备服务

运行 cypress 测试时如何指定 .env 文件用于我的开发服务器?

使用 NPM 三个 mocha+typescript 进行测试

如何避免在 mongodb 聚合中查找重复结果?

如何解决这个关于 TaskRunner 的 Node/Express 代码问题?

Mongodb 从文档中获取聚合结果中的特定属性

获取用户 ID 后,Firebase 函数 onCreate 方法在 Firestore 上不起作用

try 运行迁移时的 Typeorm:缺少必需的参数:dataSource

Node.js 变量声明和范围

适用于 Windows 的 NVM 无法正常工作?

如何undo撤消 Object.defineProperty 调用?

Base64 编码一个 javascript 对象

如何在 AWS 上的 Amazon Linux AMI 中自动启动 node.js 应用程序?

node 应用程序是否有任何独立的 gui 模块

mongo 可以 upsert 数组数据吗?

避免在弹性 beantalk 中重建 node_modules