首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >多维数组过滤javascript

多维数组过滤javascript
EN

Stack Overflow用户
提问于 2018-06-06 06:08:07
回答 2查看 107关注 0票数 -2

我有一个多维数组

代码语言:javascript
复制
[
  ["apple" , 50],
  ["pie", 45]
  ["steak", 78]
]

我有一个另一个数组

代码语言:javascript
复制
["apple","pie"]

如何将第一个数组过滤成这个结果:

代码语言:javascript
复制
[
    ["apple" , 50],
    ["pie", 45]
]

代码语言:javascript
复制
function sorting(value){ 
  var sorted = new Array(); 
  for(var i =0; i <Object.keys(inputArray); i++)
  { 
    if (inputArray[i].keys === value)
    { 
      sorted.push(inputArray[i]); 
    } 
  } 
  return sorted; 
}

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-06-06 06:18:42

试试这个:

代码语言:javascript
复制
var firstArray = [
  ["apple" , 50],
  ["pie", 45],
  ["steak", 78]
];
var secondArray = ["apple","pie"];

var thirdArray = [];

for (var i = 0; i < firstArray.length; i++) {
  if (secondArray.includes(firstArray[i][0])) {
    thirdArray.push(firstArray[i]);
  }
}
console.log(thirdArray);

当然,如果您不想使用.filter方法,则可以使用此方法。

票数 1
EN

Stack Overflow用户

发布于 2018-06-06 06:45:18

您可以使用Array.filter()Array.includes()

代码语言:javascript
复制
const arr1 = [
  ["apple", 50],
  ["pie", 45],
  ["steak", 78]
]

const arr2 = ["apple", "pie"]

const result = arr1.filter(e => arr2.includes(e[0]))

console.log(JSON.stringify(result))

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50709622

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档