Javascript 向数组键值对添加属性

Javascript 向数组键值对添加属性,javascript,Javascript,我试图在javascript中向数组的现有键值对添加属性。特别是将“id”添加到键,将“数量”添加到值 我尝试使用Object.keys(数组)和Object.values(数组)进行分离,并尝试使用Object.entries(数组)重建新数组。不知道如何将所需的属性添加到数组中。非常感谢您的帮助 数组如下所示: { 1: "1", 2: "1", 3: "1" } 这是我希望实现的实际结果: [ { id: "1", quan

我试图在javascript中向数组的现有键值对添加属性。特别是将“id”添加到键,将“数量”添加到值

我尝试使用Object.keys(数组)和Object.values(数组)进行分离,并尝试使用Object.entries(数组)重建新数组。不知道如何将所需的属性添加到数组中。非常感谢您的帮助

数组如下所示:

{
    1: "1",
    2: "1",
    3: "1"
}
这是我希望实现的实际结果:

[
    {
        id: "1",
        quantity: "1"
    },
    {
        id: "2",
        quantity: "1"
    },
    {
        id: "3",
        quantity: "1"
    }
]

您可以在循环中使用for..更改对象的每个键,并将对象推送到一个新数组。该数组具有
id:key
quantity:obj[key]

让obj={
1: "1",
2: "1",
3: "1"
}
让结果=[]
用于(输入obj){
push({id:key,quantity:obj[key]});
}

控制台日志(结果)当前,您的预期输出不正确,因为它是一个没有键的对象。相反,您可以使用数组来存储对象

您可以使用从第一个对象获取所有关键点,然后将它们发送到一个新对象,该对象包含
id
(保存
关键点的值
)和
数量(保存
值的值
obj[key]
):

const obj={1:1',2:1',3:1},
res=Object.keys(obj.map)(key=>({id:key,quantity:obj[key]}));

控制台日志(res)假设您需要一个对象数组,您可以与以下内容结合使用:

const input={1:1',2:1',3:1};
让res=Object.entries(input.map)([id,quantity])=>({id,quantity}));

控制台日志(res)for in循环是处理对象时的朋友。 以下问题的解决方案:

var obj={1:1,2:1,3:1}
var newObject=[];
for(obj中的var char){
push({id:char,quantity:obj[char]})
}

log(JSON.stringify(newObject))
您的对象本身是错误的。您想要对象数组?您想要对象数组还是对象对象对象数组?
{{id:“1”,
无效语法对不起,在那里输入了一个错误。它应该是[]而不是{}很好地使用了
.entries
,没想到那不是我,但看看你的代码,否决票可能是,可能是因为原始对象的变异?