javascript - 从 JSON 对象中删除所有键

标签 javascript json parsing

最初我使用的是 CSV,其中每一行都包含数据,例如

------------------------------------------------------
123            |   cat               |   dog         |   
------------------------------------------------------
456            |   cat               |   rabbit      |   
------------------------------------------------------
789            |   snake             |   dog         |   
------------------------------------------------------

我现在正在获取更多具有不同结构的数据,因此我无法再使用 csv。相反,我使用 JSON 文件。 JSON 文件看起来像这样

[
  [
    {
      "ID": 123,
      "animal_one": "cat",
      "animal_two": "dog"
    },
    {
      "ID": 456,
      "animal_one": "cat",
      "animal_two": "rabbit"
    },
    {
      "ID": 789,
      "animal_one": "snake",
      "animal_two": "dog"
    }
  ],
  [
    2222
  ],
  [
    12345
  ],
  [
    "2012-01-02"
  ],
  [
    "2012-12-20"
  ]
]

这样您就可以看到附加数据。对于应用程序的这一部分,我只想使用 JSON 的第一部分,即包含动物的部分。我的函数基本上只适用于值,所以我需要像原始 CSV 文件一样制作这个 JSON,这样我只有值,没有键。

所以我正在加载 JSON 文件,然后该文件包含在变量 data

然后我正在尝试这样的事情

var key = "CUST_ID";
delete data[0][key];
console.log(JSON.stringify(data[0]))

虽然这根本不起作用,但我认为无论如何这是错误的方法。我不想定义要删除的键,我只想删除所有键并保留值。

我该如何去做呢?我使用 data[0] 获取 JSON 的第一部分,即包含动物的部分。也不确定这是否正确?

谢谢

最佳答案

如果您不关心获得什么 key ,您可以简单地执行此操作:

var collection = "";
data[0].forEach(function(row) {
    var line = [];
    Object.keys(row).forEach(function(key) {
        line.push(row[key])
    });
    collection = collection + line.join(',') + '\n';
})

您将从集合中获取 csv 字符串

关于javascript - 从 JSON 对象中删除所有键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54447395/

相关文章:

java - 如何使用Stanford Parser使用java获取POS标签?

html - 浏览器如何处理格式错误的 HTML?

javascript - 不断获取 HTTP REQUEST 的 HTTP 响应代码 "1"

php - BackboneJS 与普通 php 服务器

javascript - 如何在 DOM 上触发 js 创建的触摸事件

javascript - 无法循环遍历 NodeJS 中的 JSON 对象

javascript - Python Selenium 无法通过链接。帕斯特宾爬行

javascript - 尝试从 JSON 读取时出现“未定义”

javascript - node.js 中的 http 请求

c - 如何将 lex 与 C 源文件一起使用?