从数组中查询一个值,如果存在则删除该值,不存在则添加该值

 代码如下:

       function findItem(arr,id){
            const result = arr.findIndex(item => item === id);
            if(result === -1){
                arr.push(id)
            }else{
                arr.splice(result,1)
            }
            return arr
        }

代码分析:通过findIndex方法查找数组中的每一项是否与想要查询的向一致。如果在数组中没有找到对应的值。则result的结果为-1,然后通过push方法可以将值追加到数组,如果在数组中查找到了需要的值。则result的结果为对应项的下标,然后通过splice找到对应的下标并删除该项。 最终把处理后的数据返回出去。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 可以使用JavaScript中的splice()方法来删除数组中的某个。该方法可以接受两个参数,第一个参数是要删除的元素在数组中的索引位置,第二个参数是要删除的元素个数。例如,如果要删除数组arr中的第三个元素,可以使用以下代码: ```javascript arr.splice(2, 1); // 删除数组arr中索引为2的元素,即第三个元素 ``` 此时,arr数组中的第三个元素就被删除了。注意,splice()方法会修改原始的数组,因此需要谨慎使用。 ### 回答2: 使用JavaScript删除数组中的某个可以通过以下几种方法实现: 方法一:使用splice()函数 1. 首先,找到要删除的索引位置。 2. 使用splice()函数删除该索引位置上的元素。 3. splice()的第一个参数是要删除元素的索引,第二个参数是要删除的元素个数。 例如,删除数组arr中的为value的元素: ```javascript let index = arr.indexOf(value); if (index > -1) { arr.splice(index, 1); } ``` 当数组中存在多个相同的时,以上方法仅删除一个匹配到的元素。 方法二:使用filter()函数 1. 使用filter()函数创建一个新数组,通过遍历原数组,将不等于要删除的元素保存到新数组中。 例如,删除数组arr中的为value的元素: ```javascript arr = arr.filter(item => item !== value); ``` 以上方法会返回一个新数组,其中不包含要删除。 方法三:使用delete关键字 1. 使用delete关键字删除指定索引位置上的元素。 2. 但是,delete只是将该位置的设置为undefined,并不会改变数组的长度。 例如,删除数组arr中索引为index的元素: ```javascript delete arr[index]; ``` 以上方法会将arr[index]的设置为undefined。 需要注意的是,以上方法都是在原数组上进行操作,并且删除后会改变数组的长度和索引。 ### 回答3: 在 JavaScript 中,你可以使用 `Array.filter()` 方法来删除数组中的某个特定。这个方法创建一个新的数组,其中仅包含符合条件的元素,而不包括需要删除。 下面是一个使用 `Array.filter()` 方法删除数组中某个的示例: ```javascript let arr = [1, 2, 3, 4, 5]; let valueToRemove = 3; arr = arr.filter(item => item !== valueToRemove); console.log(arr); // 输出 [1, 2, 4, 5] ``` 在上面的示例中,我们定义了一个数组 `arr`,其中包含了一些整数。然后,我们定义一个变量 `valueToRemove`,存储我们要删除,这里是 3。 我们应用了 `Array.filter()` 方法,使用箭头函数作为过滤器回调函数。在这个函数中,我们检查当前的元素是否与需要删除相等。如果不相等,该元素将被添加到新的数组中。 最后,我们将新的数组赋给原始的 `arr` 变量,并打印输出结果。这样,原始数组中的指定就被成功删除了。 这是一种在 JavaScript删除数组中特定的方法,希望对你有帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值