为了账号安全,请及时绑定邮箱和手机立即绑定

在 Javascript 中运行时(动态)在对象内创建对象

在 Javascript 中运行时(动态)在对象内创建对象

慕哥6287543 2022-09-02 16:57:27
我实际上只是用vanilla JavaScript构建一个表单,我需要一些关于我们如何在运行时创建这样的东西的帮助,const users = {   user1 : { name : "xyz", password : "1234", email : "xyz@gmail.com" },   user2 : { name : "abc", password : "1111", email : "abc@gmail.com" }};我想要这个,因为我使用本地存储来在运行时设置值,但它只设置user1值,而不是多个用户,所以需要一个代码来提供帮助。此外,检查以下代码是否有效也会有所帮助:function submitData(inputArray) {    inputArray.forEach(input => {        users.push(input.value);        localStorage.setItem(`${input.id}`, JSON.stringify(users))    });}    
查看完整描述

2 回答

?
宝慕林4294392

TA贡献2021条经验 获得超8个赞

Array.prototype.push仅适用于数组。如果你有一个对象数组,你可以使它工作得更好一点,但你会失去查找用户的能力,而不必遍历数组来找到它。


如果您真的想通过此路由,您可以做的是找到最后一个用户编号并将其创建为下一个对象的属性。


像这样的东西。


const newUserNumber = Object.keys(users).length + 1

const user = 'user' + newUserNumber

users[user] = input.value

希望这有帮助!


查看完整回答
反对 回复 2022-09-02
?
肥皂起泡泡

TA贡献1829条经验 获得超6个赞

试试这个,


function submitData(inputArray) {

    inputArray.forEach(input => {

        const userKey = 'user' + (Object.keys(users).length + 1);

        users[userKey] = input.value

        localStorage.setItem(`${input.id}`, JSON.stringify(users))

    });

}    


查看完整回答
反对 回复 2022-09-02
  • 2 回答
  • 0 关注
  • 88 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号