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

78
Visualizações
Best way of splitting a string and create the following array: '1-2-3' -> ['1', '1-2', '1-2-3']

the string is something like this:

const string = '1-2-3-4-5-6-7-...-n';

and I need an array like this:

const arr = ['1', '1-2', '1-2-3', '1-2-3-4', '1-2-...-n'];

I have go into this so far:

const str = '1-2-3'; 
const arr = []; let actualValue = '';
const splitArray = str.split('-');
for (let i = 0; i < splitArray.length; i++) {
  if (actualValue)         
    actualValue = actualValue + '-' + splitArray[i];     
  else 
    actualValue = splitArray[i];
  
  arr.push(actualValue); 
}
about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

Maybe this solution will suit you?

const result = "1-2-3-4-5-6-7-8-9".split("-").reduce((prev, curr) => {
  const last = prev.slice(-1);
  last.push(curr);
  prev.push(last.join("-"));
  return prev;
}, []);
console.log(result);

about 4 years ago · Juan Pablo Isaza Relatório

0

I prefer

const str = '1-2-3'; 
const arr = []; let actualValue = '';
const splitArray = str.split('-');
if (splitArray.length) {
  actualValue = splitArray[0];
  arr.push(actualValue);
}

for (let i = 1; i < splitArray.length; i++) {
  actualValue = actualValue + '-' + splitArray[i];
  
  arr.push(actualValue); 
}

console.log(arr);

to reduce the number of comparisons.

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