繁体   English   中英

如何使用 JavaScript map 退回 object?

[英]How to use JavaScript map to return object?

我正在使用 map JavaScript function 返回 ZA8CFDE6331BD59EB2AC966F8911C46。 row.id抛出错误。 我想为数组中的每个迭代创建 id 作为键。

<input value="3" id="first" class="pdate">
<input value="5" id="second" class="pdate">
<input value="2" id="third" class="pdate">
    if(document.querySelectorAll('.pdate')){
        let update = [...document.querySelectorAll('.pdate')].map(row => {
            return {
                row.id : row.value
            }
        })
    }

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

 let update = Object.fromEntries([...document.querySelectorAll('.pdate')].map(row => [row.id, row.value])); console.log(update);
 <input value="3" id="first" class="pdate"> <input value="5" id="second" class="pdate"> <input value="2" id="third" class="pdate">

由于要从行列表中生成 object,请使用.reduce

 const update = [...document.querySelectorAll('.pdate')].reduce((acc,row) => { acc[row.id] = row.value; return acc; }, {}) console.log(update);
 <input value="3" id="first" class="pdate"> <input value="5" id="second" class="pdate"> <input value="2" id="third" class="pdate">

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM