当前位置:首页 > 前端 > 正文内容

JS数组查找、删除元素

Z先生4年前 (2020-11-14)前端751

数组查找

方法一:indexOf()——ES5

const array = ['apple', 'banance', 'orange']
array.indexOf('apple') // 0 存在
array.indexOf('strawBerry') // -1不存在

方法二:find()——ES6

//一维
const array = ['apple', 'banance', 'orange']
array.find(obj => obj == 'banance') //banance 存在
array.find(obj => obj == 'strawBally') //undefined 不存在

//二维
const arrayList = [
  {name: '张三'}, {name: '李四'}
]
arrayList.find(obj => obj.name == '李四') //{name: '李四'} 存在
arrayList.find(obj => obj.name == '王五') //undefined 不存在

方法三:findIndex()——ES6

const array = ['apple', 'banance', 'orange']
array.findIndex(obj => obj == 'banance') //大于0存在
array.findIndex(obj => obj == 'strawBally') //-1 不存在

方法四:includes()

const array = ['apple', 'banance', 'orange']
array.includes('banance') //true存在
array.includes('strawBally') //false存在

方法五:filter()

//一维
const array = ['apple', 'banance', 'orange']
array.filter(obj => obj == 'orange') //['orange'] 存在
array.filter(obj => obj == 'strawBally') //[] 不存在

//二维
const array = [{ name: 'banance' }, { name: 'apple' }]
console.log(array.filter(obj => obj.name === 'apple')) //[{name: 'apple'}] 存在
console.log(array.filter(obj => obj.name === 'strawBally')) //[] 不存在

数组删除

方法一:

array.splice(array.indexOf(delStr),1);

方法二:

array.filter(obj => {
if(obj.name === 'apple'){
//满足,保留
return true;
}else{
//不满足,删除
return false;
}
})
标签: jses5es6数组
分享给朋友:

相关文章

import、require互相替换写法

首先,Module 语法是 JavaScript 模块的标准写法,坚持使用这种写法。使用import取代require。// badconst moduleA = require('moduleA')...

【原创】Promise循环执行,以及延时循环

演示代码//核心代码 function promiseMain(page) { return new Promise(function(resolve,&...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。