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

200
Visualizações
i have a case, how to sum all commentId in this variable? Has anyone had the same case?

I have a data array, I want to sum the whole commentId with JavaScript.

const comments = [
  {
    commentId: 1,
    commentContent: 'Hai',
    replies: [
      {
        commentId: 11,
        commentContent: 'Hai juga',
        replies: [
          {
          commentId: 111,
          commentContent: 'Haai juga hai jugaa'
          },
          {
          commentId: 112,
          commentContent: 'Haai juga hai jugaa'
          }
        ]
      },
      {
      commentId: 12,
      commentContent: 'Hai juga',
      replies: [
          {
          commentId: 121,
          commentContent: 'Haai juga hai jugaa'
          }
        ]
      }
    ]
  },
    {
    commentId: 2,
    commentContent: 'Halooo'
    }
  ]

For example : Suppose there is commentId [1, 2, 11, 12, 111, 112, 121]. Hence, commentId.length is 7

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

0

You need to do this through recursive function. As there can be n level of nesting between comment and replies. Have a look at the following code.

function caluclateLength(commentsOrReplies, sum=0) {
  sum += commentsOrReplies.length
  return commentsOrReplies.reduce((total, commentorReply) => (total + caluclateLength(commentorReply.replies || [])), sum)
}
console.log(comments) // should return desired result
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