首页 > 解决方案 > 如何在javascript中一一处理数组?

问题描述

我在一个流中有一个值数组,您希望通过管道将它一个一个地发出数组值并等待它们全部完成,然后再处理另一个数组

// This is the array:
let arr = [[1,2,3], [4,5,6]];

let data = arr.filter( (value) => {
  let newdata = value.filter((newVal, index) => {
    if (newVal !== value[index]) {
      return '' ;
    }
  });
});

console.log(data);
// Output: []
// Expected output: [[], []]

标签: javascript

解决方案


arr.map(x => x.map((y, index) => {if(y !== y[index]){return ''}}))

这将返回[["", "", ""], ["", "", ""]]


[[], []]过滤掉那些空白字符串:

arr.map(x => x.map((y, index) => {if(y !== y[index]){return ''}}).filter(z => z !== ""))

推荐阅读