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

169
Visualizações
¿Por qué map o reduce sigue ejecutándose sin que se dé ninguna condición?
const array = [7, 2, 4, 1, 10, 6, 5, 11] const max = array.reduce((acc, val) => { console.log(val, acc) return val > acc ? val : acc }, 0) console.log(max)

Estaba mirando este código del método de matriz de reducción, una cosa que no pude entender en absoluto es: ¿Cómo va la función de reducción a la siguiente iteración? No hay ninguna condición que obligue a la función reductora a ir al siguiente elemento de la matriz. En la primera iteración, val es 7, el primer elemento de la matriz, y acc es 0, la función reductora devuelve 7 según la condición escrita. Mi pregunta es cómo se llamará al número 7 como el nuevo acumulador en la función reductora. Pensé que el procedimiento normal es que tienes que cumplir con algún tipo de condición para iterar una y otra vez. ¿Hay algo escrito en el método de reducción en sí? ¿Puedes explicarme por favor?

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

0

Según los documentos aquí: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/reduce

El método reduce () ejecuta una función de devolución de llamada "reductor" proporcionada por el usuario en cada elemento de la matriz,

about 4 years ago · Juan Pablo Isaza Relatório

0

Tenga en cuenta que array.reduce :

reduce llama a la devolución de llamada, como una función, una vez para cada elemento después del primer elemento presente en la matriz, en orden ascendente.

Podría entender la reduce como una array.map pero el objetivo es cambiar la matriz a una salida única.

Recorrerá toda la array de la misma manera que forEach / map /...

Verifique el siguiente ejemplo, aunque no haga nada, como return o cualquier otra cosa a array.reduce , seguirá funcionando e iterando la array

Puedes consultar aquí para obtener más

Pero, por supuesto, si no usa return para array.reduce , no obtendrá ningún beneficio si usa array.reduce

 const array = [7, 2, 4, 1, 10, 6, 5, 11] const max = array.reduce((acc, val) => { console.log(val) }, 0) console.log(max)

about 4 years ago · Juan Pablo Isaza Relatório

0

La implementación del método reduce se parece a algo como esto:

 Array.prototype.reduce = function(callback, initialValue) { var acc = initialValue; for(var i = 0; i < this.length; i++) { acc = callback(acc, this[i], i); } return acc; }

La condición de iteración de métodos de reduce es la longitud de la matriz. Lo mismo ocurre con el map .

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