微信小程序 删除数组中指定的对象

一、封装删除函数 util.js

/**
 * 删除数组中的某一个对象
 * @param arr {Array} 数组
 * @param obj {Object} 需要删除的对象
 * @returns {Array} 处理之后的数组
 */
const arrRemoveObj = (arr, obj) => {
  let len = arr.length;
  for (let i = 0; i < len; i++) {
    if (arr[i] === obj) {
      if (i === 0) {
        arr.shift();
        return arr;
      } else if (i === len - 1) {
        arr.pop();
        return arr;
      } else {
        arr.splice(i, 1);
        return arr;
      }
    }
  }
};

module.exports = {
  arrRemoveObj: arrRemoveObj,
};

二、使用方法

/**在页面中引入util.js */
const _UTIL = require("../../../utils/util.js");

Page({
    data: {
        jobList: [{id: "1"},{id: "2"},{id: "3"},{id: "4"},{id: "5"},{id: "6"},],
    },
    onLoad(e) {
        /**设置删除第几个 */
        let idx = 0;
        let jobList = this.data.jobList;

        _UTIL.arrRemoveObj(jobList, jobList[idx]);

        this.setData({
            jobList:jobList
        })
    }
})

三、输出结果

// 删除之前
[{id: "1"},{id: "2"},{id: "3"},{id: "4"},{id: "5"},{id: "6"},]

// 删除之后
[{id: "2"},{id: "3"},{id: "4"},{id: "5"},{id: "6"},]

参考:JavaScript shift() 方法 、JavaScript pop() 方法JavaScript splice() 方法

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论
### 回答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()函数返回的是一个新的数组,原数组并没有被修改,如果需要覆盖原数组,需要将新的数组赋值给原数组变量。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱宇阳

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值