我有一个多维数组
[
["apple" , 50],
["pie", 45]
["steak", 78]
]
我有一个另一个数组
["apple","pie"]
如何将第一个数组过滤成这个结果:
[
["apple" , 50],
["pie", 45]
]
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;
}
发布于 2018-06-06 06:18:42
试试这个:
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方法,则可以使用此方法。
发布于 2018-06-06 06:45:18
您可以使用Array.filter()和Array.includes()
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))
https://stackoverflow.com/questions/50709622
复制相似问题