javascript - 如何将嵌套对象更改为数组

标签 javascript arrays oop

我有一个这样的对象。

var Obj = {
    obj1 : {
        val : 1,
        id : 1
    }
    obj2 : {
        val : 2,
        id :2
    }
    obj3 : {
        val : 3,
        id :3
    }
}

我想将我的 obj1 和所有子对象放入一个数组中,这样我就可以检索值。我想要数组中的数组,因为我想检索它们,因为它是动态的我不能使用 Obj.obj1 因此我想插入数组。

任何人都可以告诉我如何得到它。感谢帮助

最佳答案

使用Object.keysArray#map方法将其转换为数组,但不能保证顺序,因为对象属性没有任何顺序。

var Obj = {
  obj1: {
    val: 1,
    id: 1
  },
  obj2: {
    val: 2,
    id: 2
  },
  obj3: {
    val: 3,
    id: 3
  }
};

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

console.log(res);

关于javascript - 如何将嵌套对象更改为数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41734457/

相关文章:

javascript - BIRT 动态图像 url - 无法访问数据列

javascript - 使用 File API polyfill 读取数据 URL

javascript - 无法在 HTML 元素上实现 onclick 事件

arrays - 在 MATLAB 向量中的固定数量的非零元素之间插入选定数量的零

c++ - 有没有办法让两个具有不同访问权限的 getter 并在 for 循环中使用其中一个?

c++ - 你不应该从 std::vector 继承

java - [Android]键盘和键盘监听器

javascript - 如何在 Laravel 5.2 中验证插入表的数据

javascript - 尝试 JSON.parse 来自 Django 的序列化数据

javascript - 查找最近的已知位置 : Google Reverse Geocoding