// 查找数组中是否存在某元素 indexOf
// indexOf 返回首个被找到的元素在数组中的索引位置; 若没有找到则返回 -1
var a=1;
var arry1=[1,2,3];
console.log(arry1.indexOf(a))// 0 输出索引位置
//删除数组中的某个元素 splice
//splice 返回被删除项,并改变原数组
var arry2=[4,5,6];
console.log(arry2.splice(1,1)) // [5] 返回被删除项
console.log(arry2) //[4,6]
//查找数组对象中是否存在某个元素 filter
//filter 返回一个满足条件的新的数组 不改变原数组
var arry3=[
{name:"Alice",id:0},
{name:"Bob",id:1},
{name:"Cindy",id:2}
];
let newArry=arry3.filter(item=>{
return item.id==1;
})
console.log(arry3)//[{name:"Alice",id:0},{name:"Bob",id:1},{name:"Cindy",id:2}]
console.log(newArry) // [{name:"Bob",id:1}]
var b=[1,2];
let newArry2=arry3.filter(item=>{
return b.indexOf(item.id)>-1
})
console.log(newArry2)//[{name:"Bob",id:1},{name:"Cindy",id:2}]
//其他
var listmap=new Map();
listmap=listToMap(arry3,"id","name");//从arry3中,找出id对应的name值
console.log(listmap)//{0 => "Alice", 1 => "Bob", 2 => "Cindy"}
console.log(listmap.get(1))//找出arry3中,id=1的对象里面的name值 输出Bob
//
function listToMap(list, k1, k2) {
return list.reduce((map, item) => {
return map.set(item[k1], item[k2]);
}, new Map());
}
数组常用查询方法
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 多重条件判断语句 if语句 语法三: if(条件表达式){ 语句... }else if(条件表达式){ 语句.....
- 流程控制语句:通过流程控制语句可以控制程序执行流程,使程序可以根据一定的条件来选择执行 语句分类: 1.条...
- 流程控制语句:通过流程控制语句可以控制程序执行流程,使程序可以根据一定的条件来选择执行 语句分类: 1.条...
- 条件分支语句: var today = 1; switch(today){ case ...