Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

107
Visualizações
filter and regex issue

I want to filter an array with a function.

if (this.pendingItems.customer?.emailAddresses) {
  this.pendingItems.customer.emailAddresses.filter(email => {
    isEmailValid(email);
  });
}

the function isEmailValid()

export function isEmailValid(s: string): boolean {
  const re =
    /^[a-z0-9+-][a-z0-9_+-]*(\.[a-z0-9_+-]+)*@([a-z0-9-]+\.)+[a-z0-9-]{2,}$/i;
  return re.test(s);
}

return the correct response (true or false) with the emails(test@email.com and test2email) I pass it, but the filter don't work.

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

You need to modify your expression slightly. The method you pass to the filter function should return true/false but it always returns void (which will be cast to false).

filter(email => isEmailValid(email))
or
filter(isEmailValid)
or
filter(email => { return isEmailValid(email) })

In case you missed it - you forgot to return the result of the isEmailValid ;)

about 4 years ago · Juan Pablo Isaza Relatório

0

So the solution was:

if (this.pendingItems.customer?.emailAddresses) {
  this.pendingItems.customer.emailAddresses = this.pendingItems.customer.emailAddresses.filter(isEmailValid);
}

I forgot to reassign the variable ;p

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda