如何使用JavaScript映射返回对象?

如何使用JavaScript映射返回对象?,javascript,html,arrays,Javascript,Html,Arrays,我使用MapJavaScript函数返回一个对象行.id抛出错误。我想为数组中的每个迭代创建一个id作为键 <input value="3" id="first" class="pdate"> <input value="5" id="second" class="pdate"> <input value="2" id=&quo

我使用MapJavaScript函数返回一个对象<代码>行.id抛出错误。我想为数组中的每个迭代创建一个id作为键

<input value="3" id="first" class="pdate">
<input value="5" id="second" class="pdate">
<input value="2" id="third" class="pdate">

由于要从行列表生成对象,请使用:

const update=[…document.querySelectorAll('.pdate')].reduce((acc,row)=>{
acc[row.id]=row.value;
返回acc;
}, {})
控制台日志(更新)

您可以使用
Object.fromEntries
将键值对数组转换为对象

let update=Object.fromEntries([…document.querySelectorAll('.pdate')]
.map(行=>[row.id,row.value]);
控制台日志(更新)


我只想要一个应该包含所有三个属性的对象,而不是数组列表objects@Akhi21如果您想要id值的地图,可以使用
。如上所述减少
。我不能使用地图什么?正如我通常所问的,在本例中,
.map
用于迭代数组。由于最终结果应该是一个对象,
.reduce
是go@Akhi21没关系,重要的是问题已经解决了。如果你想要一个对象,map就是答案……预期的输出是什么?我试过了,但在js中它显示了
row.id
的错误。我希望预期的输出为
{“first”:“3”,“second”:“5”,“third”:“2”}
    if(document.querySelectorAll('.pdate')){
        let update = [...document.querySelectorAll('.pdate')].map(row => {
            return {
                row.id : row.value
            }
        })
    }