如何从嵌套数组中删除空元素

时间:2020-01-16 15:07:06

标签: javascript node.js

我有一个名为telnet X.X.X.X 389的以下数组,我需要从嵌套数组中删除空元素。

parsedAutor

我如何做到这一点?我一直在尝试先映射元素然后过滤它们,但是它不起作用,我认为我做错了。

这就是我一直在尝试的事情。

[
  ['John Doe', '', 'CPF 000.000.000-00'],
  ['30/05/2018 - Vara de Delitos de Roubo e Extorsão'],
  ['John Doe', '', 'CPF 000.000.000-00'],
  ['29/02/2016 - 1ª Vara Criminal'],
  ['John Doe', '', 'CPF 000.000.000-00'],
  ['18/02/2016 - 3º Juizado Especial Cível'],
  ['John Doe', '', 'CPF 000.000.000-00'],
  ['18/02/2016 - 3º Juizado Especial Cível']
]

但是它返回了八个const autor = $('div[class="espacamentoLinhas"]').toArray(); let parsedAutor = autor.map((x) => x.children[2].data.trim()); console.log(parsedAutor); parsedAutor = parsedAutor.map((x) => x.split('\n').map((y) => y.trim())); console.log(parsedAutor); // note that the code above is just to get the context from where I taking the values, please focus on the code below const filteredAutor = parsedAutor.map((x) => { x.filter((y) => y !== ''); }); console.log(filteredAutor); 值,我在做什么错了?

谢谢。

5 个答案:

答案 0 :(得分:1)

您的代码几乎正确!您需要在x上返回过滤器,或者将其缩短。

const filteredAutor = parsedAutor.map((x) => x.filter((y) => y !== ''));

const filteredAutor = parsedAutor.map((x) => {
    return x.filter((y) => y !== '');
});

答案 1 :(得分:1)

您需要在x上放回滤镜,或将其缩短。通过使用return语句或删除括号以使其成为表达式箭头函数,从map()回调返回一个值。

const filteredAutor = parsedAutor.map((x) => x.filter((y) => y !== ''));

const filteredAutor = parsedAutor.map((x) => {
    return x.filter((y) => y !== '');
});

答案 2 :(得分:1)

您需要从map()回调中返回一个值,方法是使用return语句,或者删除括号以使其成为表达式箭头函数。

答案 3 :(得分:1)

您需要return中的值map

const filteredAutor = parsedAutor.map((x) => {
   return x.filter((y) => y !== '');
});

否则就做

const filteredAutor = parsedAutor.map(x => x.filter(y => y !== ''));

答案 4 :(得分:0)

可能是这个吗?

let myDoubleArray = [ [ 'Gladson de Lima Cameli', '', 'CPF 434.611.072-04' ]
                    , [ '30/05/2018 - Vara de Delitos de Roubo e Extorsão' ]
                    , [ 'Gladson de Lima Cameli', '', 'CPF 434.611.072-04' ]
                    , [ '29/02/2016 - 1ª Vara Criminal' ]
                    , [ 'Gladson de Lima Cameli', '', 'CPF 434.611.072-04' ]
                    , [ '18/02/2016 - 3º Juizado Especial Cível' ]
                    , [ 'Gladson de Lima Cameli', '', 'CPF 434.611.072-04' ]
                    , [ '18/02/2016 - 3º Juizado Especial Cível' ]
                    ]
// remove empty elements

for (let inArr of myDoubleArray)
  {
  for(let i = inArr.length;i--;) {  if (inArr[i]==='') inArr.splice(i,1)  }
  }

console.log(myDoubleArray)