2021-04-27 动态添加对象

本文介绍了如何在JavaScript中构造并整合对象,将其存入新对象数组,以及如何在循环中安全地存储对象数据,避免因深度克隆问题导致的数据覆盖。示例代码展示了在处理数据列表时的常见操作,对于前端开发人员理解和优化数据处理流程具有指导意义。
摘要由CSDN通过智能技术生成

1.构造对象,并且整合起来存入新对象

   let _qnaire = this.data.qnaire
    let _data_list = {
      key: {
        score: this.data.score,
        type: this.data.question_type,
        question: this.data.question,
        conLists: this.data.conLists,
        correct: this.data.correct
      }
    }
    _qnaire1.push(_data_list)
    this.setData({
      qnaire1: _qnaire1
    }) 

2.循环储存对象

    var idx = e.currentTarget.dataset.index; //当前下标
    var val = e.detail.value; //当前输入的值
    var _list = this.data.conLists; //data中存放的数据
    _list.push("") //添加存储空间
    for (let i = 0; i < _list.length; i++) {
      if(idx == i){
        _list[i] = {
        del: val
      }
      }
    }
    this.setData({
      conLists: _list
    })
 

注意坑,循环储存对象记得要深度克隆,否则储存的新对象会覆盖之前的对象

    _conLists = Object.assign({}, this.data.conLists)

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值