删除数组指定的元素splice和filter

删除数组指定的元素的两个方法splice和filter

方法--splice

该方法每次删除的符合条件的个数,取决于后面的参数,下述示例中参数为1,也就是删除数组中value为b的元素,删除数量为1.

复制代码
let value = 'b',
    arr = ['a','b','c','d']

arr.splice(arr.indexOf(value), 1) // ['b']
// arr => ['a','c','d']

方法---filter

该方法一次性删除所有满足条件的数组元素

复制代码
var arr = ['a','b','c','d'],
    value = 'b'
 
arr = arr.filter(item => item != value)
// arr => ['a','c','d']

笔者在小程序中测试,代码如下

小程序wxml端:

复制代码
<button type="primary" bind:tap="splice">数组删除练习</button>

小程序js端代码:

复制代码
// pages/array_del/array_del.js
Page({

   data: {
    array:['a','b','a','b','d','c','e','d']
  },
//数组删除指定元素

splice(){
  console.log(this.data.array.indexOf('d'))
    if(this.data.array.indexOf('d')==-1){//判断数组中是否还有满足条件的元素
      return;
    }
  this.data.array.splice(this.data.array.indexOf('d'),1)
  console.log(this.data.array)
}
})
相关推荐
小a杰.3 分钟前
Flutter 设计系统构建指南
开发语言·javascript·ecmascript
零度@20 分钟前
Java中Map的多种用法
java·前端·python
yuanyxh44 分钟前
静默打印程序实现
前端·react.js·electron
三十_A2 小时前
如何正确实现圆角渐变边框?为什么 border-radius 对 border-image 不生效?
前端·css·css3
kgduu2 小时前
js之事件系统
javascript
小满zs2 小时前
Next.js第十三章(缓存组件)
前端
前端老宋Running3 小时前
“受控组件”的诅咒:为什么你需要 React Hook Form + Zod 来拯救你的键盘?
前端·javascript·react.js
风止何安啊3 小时前
拿捏 React 组件通讯:从父子到跨组件的「传功秘籍」
前端·react.js·面试
阿蒙Amon3 小时前
JavaScript学习笔记:7.数字和字符串
javascript·笔记·学习
懒得不想起名字3 小时前
将flutter打成aar包嵌入到安卓
前端