为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

慕森卡 2019-06-20 15:11:13
将带有数字键的JavaScript对象转换为数组我有这样一个对象作为来自服务器的JSON响应返回:{"0":"1","1":"2","2":"3","3":"4"}我想把它转换成这样的JavaScript数组:["1","2","3","4"]有什么最好的办法吗?无论我读到什么地方,人们都在使用复杂的逻辑循环。那么,有其他方法可以替代吗?
查看完整描述

3 回答

?
胡说叔叔

TA贡献1804条经验 获得超8个赞

实际上,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也是必要的。

在ES 2015中Object.values对救援来说,这是一件轻而易举的事

var arr = Object.values(obj);


查看完整回答
反对 回复 2019-06-20
?
慕丝7291255

TA贡献1859条经验 获得超6个赞

var json = '{"0":"1","1":"2","2":"3","3":"4"}';var parsed = JSON.parse(json);var arr = [];for(var x in parsed){
  arr.push(parsed[x]);}

希望这就是你想要的!


查看完整回答
反对 回复 2019-06-20
?
慕桂英546537

TA贡献1848条经验 获得超10个赞

你就像

var data = {
    "0": "1",
    "1": "2",
    "2": "3",
    "3": "4"};var arr = [];for (var prop in data) {
    arr.push(data[prop]);}console.log(arr);

演示


查看完整回答
反对 回复 2019-06-20
  • 3 回答
  • 0 关注
  • 693 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信