// 查找数组中是否存在某元素 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 ...