小编典典

将带有数字键的 JavaScript 对象转换为数组

all

我有一个像这样的对象作为来自服务器的 JSON 响应返回:

{
  "0": "1",
  "1": "2",
  "2": "3",
  "3": "4"
}

我想将它转换成这样的 JavaScript 数组:

["1","2","3","4"]

有没有最好的方法来做到这一点?无论我在哪里阅读,人们都在使用循环使用复杂的逻辑。那么有没有其他方法可以做到这一点?


阅读 56

收藏
2022-08-19

共1个答案

小编典典

它实际上非常直接与 jQuery 的 $.map

var arr = $.map(obj, function(el) { return el });

小提琴

几乎没有 jQuery 也一样容易,将键转换为数组,然后将值映射回
Array.map

var arr = Object.keys(obj).map(function(k) { return obj[k] });

小提琴

这是假设它已经被解析为一个 javascript 对象,并且实际上不是 JSON,它是一种字符串格式,在这种情况下,JSON.parse也需要运行。

在 ES2015 中有Object.values救援,这让这变得轻而易举

var arr = Object.values(obj);
2022-08-19