将数字键对象转换为数组
在处理包含带有数字键的对象的 JSON 响应时,您可能会遇到需要转换将它们放入数组中。虽然常见的解决方案涉及复杂的循环,但还有更高效、更简单的方法。
jQuery 的 $.map
一种方法利用 jQuery 的 $.map function:
var arr = $.map(obj, function(el) { return el });
此方法迭代对象的属性并返回
Array.map
没有 jQuery,您可以将 Array.map 与 Object.keys 一起使用:
var arr = Object.keys(obj).map(function(k) { return obj[k] });
这里, Object.keys 将对象的键转换为数组,Array.map 检索与这些键关联的值
Object.values (ES2015)
在现代 JavaScript(ES2015 及更高版本)中,Object.values 提供了一个简洁的解决方案:
var arr = Object.values(obj);
该函数直接返回对象的数组
注意:
这些方法假设 JSON 响应已被解析为 JavaScript 对象。如果仍然是 JSON 字符串格式,则需要先使用 JSON.parse:
var obj = JSON.parse(jsonString); var arr = Object.values(obj);
以上是如何在 JavaScript 中有效地将数字键控 JSON 对象转换为数组?的详细内容。更多信息请关注PHP中文网其他相关文章!