将对象的结构更改为数组

时间:2018-06-18 15:16:41

标签: javascript arrays object

试图改变以下对象的结构一段时间:

"Obj":{"0":"value1","1":"value2"}

这就是我想要的样子。就像一个简单的数组:

"Obj": ["value1","value2"]

有一种简单的方法吗? 提前致谢

3 个答案:

答案 0 :(得分:1)

只需使用Object.values。

Here是文档。它会以您想要的方式返回对象的所有值的数组。

$("input:radio").click(function(){
    $("input[name='"+$(this).attr("name")+"']:radio").not(this).removeData("chk");

    $(this).data("chk",!$(this).data("chk"));

    $(this).prop("checked",$(this).data("chk"));
});

希望这有帮助!

答案 1 :(得分:0)

如果您还想存储密钥,可以执行以下操作:

o = {"Obj":{"key1":"value1","key2":"value2"}};

var newArray = [];

for(let i in o.Obj){
    newArray[i] = o.Obj[i];
}
console.log(newArray);

答案 2 :(得分:0)

假设您的结构为:

var obj = {"Obj":{"0":"value1","1":"value2"}};

要获得您想要的结构,您可以这样做:

obj["Obj"] = Object.values(obj["Obj"]);

结果将是:

obj = {"Obj" : ["value1", "value2"]};