微信小程序中修改数据(单个数据,数组)

微信小程序有自己的语法,修改数据我们必须要使用setData(),参数是一个key,value形式的对象。一下是我做的一个关于修改几种数据的小小记录:
1.修改单个值:

page({
  data:{
    resultOpacity:true,
  },
  change(e){
    this.setData({
     resultOpacity: false,
    })
  }
})

2.修改整个数组:

Page({
  data: {
    imgList:[
      {
        words:"这里放文字1",
        number:12555,//票数
        isSelect:false,//判断是否已经投票
      },
      { 
        words: "这里放文字2",
        number: 18458,//票数
        isSelect: false,//判断是否已经投票
      },
    ],
  },

  onLoad: function () {
     var that = this;
     let newimgList =[];
     newimgList.push({
         number:that.data.imgList[index].number
    })
      that.setData({
         imgList:newimgList
      })   
  },
  })
 

3.修改数组中的变量:
key值为变量的时候要用[ ]引起来。

vote:function(e){
    var that = this;
    var index = e.currentTarget.dataset.id;//获取当前投票的下标
    var newData = 'imgList[' + index + '].number';
    var isSelect = 'imgList[' + index + '].isSelect';
    var selected = that.data.imgList[index].isSelect
    
    //判断如果没有投票才能投
    if (selected ==false){
      that.setData({
        //key值为变量的时候要用[ ]引起来
        [newData]: that.data.imgList[index].number + 1,
        [isSelect]: true
      })
      wx.showToast({
        title: '投票成功!',
        icon: 'none',
        duration: 1000
      })
    }else{
      wx.showToast({
        title: '你已经投过票了,不能再投',
        icon: 'none',
        duration: 1000
      })
    } 
  }

4.修改数组中的某条数组:
修改数组中的某条数据时,key值必须要带’’(单引)号。

vote: function (e) {
    var that = this;
    var index = e.currentTarget.dataset.id;//获取当前投票的下标
    var newData = 'imgList[' + index + '].number';
   
    that.setData({
      'imgList[0].number': that.data.imgList[index].number+1
    })
   
  },

在这里插入图片描述

  • 5
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: 可以使用 JavaScript 数组的 splice() 方法来删除数组的指定元素。splice() 方法接受两个参数,第一个参数是要删除元素的索引,第二个参数是要删除的元素个数。例如: ``` let arr = [1, 2, 3, 4, 5]; arr.splice(2, 1); console.log(arr); // [1, 2, 4, 5] ``` 在这个例子,我们使用 splice() 方法删除了数组 arr 索引为 2 的元素,即数字 3。 另外,还可以使用 filter() 方法来删除数组满足特定条件的元素。例如: ``` let arr = [1, 2, 3, 4, 5]; arr = arr.filter(function(item) { return item !== 3; }); console.log(arr); // [1, 2, 4, 5] ``` 在这个例子,我们使用 filter() 方法删除了数组 arr 值为 3 的元素。 使用这两种方法都可以在小程序删除数组的指定数据。 ### 回答2: 要删除微信小程序数组指定数据,你可以按照以下步骤进行操作: 1. 首先,你需要获取到要操作的数组。可以使用小程序提供的`getApp()`方法获取到全局的应用实例,然后通过该实例的`globalData`属性获取到存储在全局的数据。 2. 然后,你可以使用数组的`filter()`方法来创建一个新的数组,该新数组将不包含指定数据。`filter()`方法接受一个函数作为参数,该函数用于筛选出符合条件的数组元素并返回新的数组。 3. 在筛选函数,你可以根据指定的条件进行筛选。例如,如果要删除值为10的数据,则可以使用条件`item !== 10`来判断元素是否不等于10,然后返回所有符合该条件的元素。 4. 最后,将得到的新数组重新赋值给原数组,即完成了删除指定数据的操作。你可以通过全局实例的`globalData`属性来重新赋值,或者将修改后的数组传递给其他需要使用该数组的页面或组件。 综上所述,你可以通过获取数组、使用`filter()`方法筛选出不包含指定数据的新数组,然后将新数组赋值给原数组来实现微信小程序的删除数组指定数据的功能。 ### 回答3: 微信小程序删除数组的指定数据可以通过以下步骤实现: 1. 首先,需要获取要操作的数组。可以是初始化时定义的数组,也可以是从后台获取到的数组。 2. 然后,使用JavaScript的内置函数filter()来过滤数组。filter()函数接受一个回调函数作为参数,回调函数用于判断数组的每个元素是否满足删除条件。 3. 在回调函数,使用if语句来判断当前元素是否需要删除。如果需要删除,则返回false;如果不需要删除,则返回true。 4. 当filter()函数执行完毕后,会返回一个新的数组,其只包含满足条件的元素,即删除了指定数据数组。 5. 最后,可以根据需要将新的数组存储到新的变量,或者覆盖原来的数组,完成删除操作。 以下是示例代码: ``` // 获取要操作的数组 var arr = [1, 2, 3, 4, 5]; // 使用filter()函数过滤数组 var filteredArr = arr.filter(function(item) { // 判断当前元素是否需要删除 if (item !== 3) { // 删除元素为3的情况 return true; // 不需要删除,返回true } else { return false; // 需要删除,返回false } }); // 将新的数组存储到新的变量 console.log(filteredArr); // 输出 [1, 2, 4, 5] ``` 通过以上步骤,就可以在微信小程序删除数组的指定数据。需要注意的是,使用filter()函数返回的是一个新的数组,原数组并没有被修改,如果需要覆盖原数组,需要将新的数组赋值给原数组变量。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值