js 二维数组匹配另外一个数组的值

有一个二维数组和一个一维数组,根据一维数组提供的值,找到对应二维数组中的元素

二维数组 数字是编号
[
  ["1","商务"],
  ["2","健身"],
  ["3","游泳"],
  ["4","餐饮"],
  ["5","休闲"],
  ["6","住宿"]

]



[1,3,5]
对应 ["1","商务"]  ["3","游泳"] ["5","休闲"]
阅读 7k
3 个回答
Array.prototype.myFilter=function(ary){
  return this.filter(function(item){
     return  ary.indexOf(Number(item[0]))!=-1;
  })
}
var a=[
  ["1","商务"],
  ["2","健身"],
  ["3","游泳"],
  ["4","餐饮"],
  ["5","休闲"],
  ["6","住宿"]

];
    var b=[1,3,5];
    console.log(a.myFilter(b))
var arr = [
  ["1","商务"],
  ["2","健身"],
  ["3","游泳"],
  ["4","餐饮"],
  ["5","休闲"],
  ["6","住宿"]
]
var arr2 = [1,3,5];

var arr3 = arr.filter(v=>arr2.some(k=>k==v[0]))

console.log(arr3)//[["1","商务"]  ["3","游泳"] ["5","休闲"]]
let arr = [ ["1","商务"],["2","健身"],["3","游泳"],["4","餐饮"], ["5","休闲"],["6","住宿"] ];
let arr2 = [1,3,5];

let arr3 = arr.filter((item, i) =>{
    let myitem = '';
    arr2.filter((value, b) =>{
      if(item[0] == value) {
        myitem = value;
    }
  });
  return myitem;
});
console.log(arr3);

题主可以看在线demo,demo连接 点击我

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题