微信小程序数组对象下面添加属性实现方法

我在做项目时遇到一个数组请求回来时,我只要取其中的几个属性就可以了,并且把这几个属性追加到新的数组里面,接着把这个新的数组把它追加到每个数组下面成为新属性,具体实现步骤如下:

1.var arry = request.data.data //加入这是我请求回来的数组: 

 

 2.接着想在这六条数据对应的对象属性把其中的几项属性追加到数组里面,我们可以通过for循环,然后取得数据后,再添加属性:

 for (let i = 0; i < arry.length; i++) {

          var goods_Arr = {}  //先定义一个对象,然后再把下面请求回来的属性放进来


          goods_Arr.goods_Id = arry[i].id

          goods_Arr.goods_name = arry[i].name

          goods_Arr.goods_num = arry[i].storage

          goods_Arr.goods_Img = arry[i].thumbImage

          arry[i].set_list = [goods_Arr]   //最后把这个对象放到数组里面


        }
        console.log('arri', arry)

效果图: 

 这里我如果想在属性set_list数组后面再追加52条数据的话可以这样做

 1.先把52条数据数组循环遍历出来,然后也是把它其中需要的几个属性拿出来,然后再追加到一个数组里面,接着用数组的api属性concat() 把两个数组连接起来,具体代码如下:

           var arrSelect = []    //先定义一个空数组

            var goods_List = res.data.data  //这是请求回来的52条数据

            console.log('gg', goods_List)

            for (let i = 0; i < goods_List.length; i++) {  //接着循环遍历它

              var add_list = {}    //定义一个空对象 

              add_list.goods_Id = goods_List[i].id   //把需要用到的属性取出来

              add_list.goods_name = goods_List[i].name

              add_list.goods_num = 1

              add_list.goods_Img = this.data.Imag + goods_List[i].thumbImage

              arrSelect.push(add_list)  //接着把所有的数据丢到一个数组里面去

            }

            // console.log('arrSelect', arrSelect)


            for (let i = 0; i < arry.length; i++) {


              arry[i].set_list = arry[i].set_list.concat(arrSelect)

             //这里再把52条数据追加到刚刚上面请求的新属set_list性数组后面去

            }


            console.log('arry', arry) //最终结果

效果图如下:

 

 下面补充一下小知识this.setData({ arry: arry}), 这个可以全局调用,并且可以每个方法都可以有相同的this.setData({arry:arry}),以前我以为这个set一遍就不可以在别的方法用set了,其实不是,当你执行哪个方法它就会在哪个方法执行

 

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值