javascript - 将 JSON 对象转换为 JS 键/值对数组

标签 javascript jquery arrays json jsonp

我有一个要求,我有一个应该转换为键/值对数组的 JSON 对象。

JSON:

Object {id: "1213115", transac_status: "Y", trans_id: "601427"....}

这应该被转换成如下的 JS 数组: JS 数组:

var transData = [{ id: "1213115", transac_status: "Y", trans_id: 601427".... ];

我尝试了以下转换脚本。

var transData = $.map(Object , function (e2, e1) {
    return [[e2, e1]];
});

数组没有按预期转换,而是具有以下内容:-

Array[2]
, 
Array[2]
, 
Array[2]
, 
Array[2]

.....等等

最佳答案

我认为您的代码没有任何问题。你说,你想生成一个包含键值对的数组,你实际上是这样做的:

Array[2] , Array[2] , Array[2] , Array[2] 

这只是 console.log 产生的输出。如果你仔细观察你的阵列,你会发现它实际上是:

[["1213115", "id"], ["Y", "transac_status"], ["601427", "trans_id"]]

考虑一下,您可能想要切换键/值对,如下所示:

var transData = $.map(Object , function (value, key) {
    return [[key, value]];
});

我重命名了函数参数以使事情更清楚一些。

输出将是:

[["id", "1213115"], ["transac_status", "Y"], ["trans_id, "601427"]]

提示:如果你在浏览器中工作,你可以只用这一行输出整个数组,这给你一个很好的表格形式的输出:

console.table(transData);

enter image description here

这是您要找的吗?希望对您有所帮助。

关于javascript - 将 JSON 对象转换为 JS 键/值对数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34240678/

相关文章:

javascript - javascript 变量内的 html 和 php

javascript - JS日期比较是如何工作的?

javascript - 如何在 JavaScript 中始终获取最外层元素

jquery - Dojo 到 jQuery 的转换

javascript - 如何在一个页面上拥有多个 SignalR 集线器

javascript - 针对html内容进行滚动计算

javascript - 在井内悬停时向 Bootstrap 缩略图图像添加叠加层

javascript - 点击后清除jquery脚本

python - 推断 numpy 数组中最近的、较小的值

C++:使用for循环允许用户将数字输入数组