除了過濾之外,您只需要獲取內部數組的前兩個元素。
Array#filter
返回數組中的相同元素。爲了獲得沒有過濾器項目的想要項目,您需要返回前兩個對象,或者使用給定過濾器過濾項目(建議2)。
var array = [['name1', 2, 'filter1'], ['name2', 5, 'filter2'], ['name3', 8, 'filter3'], ['name4', 1, 'filter2']],
filter = 'filter2',
result = array.filter(a => a[2] === filter).map(a => a.slice(0, 2));
console.log(result);
var array = [['name1', 2, 'filter1'], ['name2', 5, 'filter2'], ['name3', 8, 'filter3'], ['name4', 1, 'filter2']],
filter = 'filter2',
result = array
.filter(a => a.some(v => v === filter))
.map(a => a.filter(v => v !== filter));
console.log(result);
份額一些代碼 – Garfield