Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

109
Vistas
¿Cómo asignar un valor de temperatura aleatorio para cada fecha de una matriz basada en un mes de 30 elementos de fecha/día?

Imagina un mes de 30 días y asigna al azar una temperatura para cada uno de estos días, incluyendo la temperatura de cada día entre 7 y 16°C. Aquí está mi código:

 let arrMonth = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30 ] let temperature = Math.floor(Math.random() * (16 - 7 + 1)) + 7; for (let i = 0; i < arrMont.length; ++i) { arrMonth[i] = temperature console.log(arrMonth[i]) }

Solo me da la temperatura del ultimo dia. ¿Que estoy haciendo mal?

en la consola:

 30: 11
about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Una extensión simple de su código es convertir su variable en una función de flecha, como

 const temperature = () => (Math.floor(Math.random() * (16 - 7 + 1)) + 7);

Luego, cada vez que solicite 'temperatura ()' obtendrá un nuevo valor.

 let arrMonth = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30 ] const temperature = () => (Math.floor(Math.random() * (16 - 7 + 1)) + 7); for (let i = 0; i < arrMonth.length; ++i) { arrMonth[i] = temperature() console.log(arrMonth[i]) }

about 4 years ago · Juan Pablo Isaza Denunciar

0

Lo que pide el OP es en realidad una tarea de ping de map .

Pero dado que el OP también quiere representar las fechas/días bien templados, se debe tener en cuenta un enfoque que siga la separación de preocupaciones (dicho libremente ... "cada tarea una sola función" ).

Por lo tanto, el OP podría jugar con las diferentes tareas y, por ejemplo, adaptarlas a las necesidades del OP ...

 function getRandomValueFromTemperatureRange() { // returns random values in between 7 and 16 inclusively. return (Math.floor(Math.random() * 10) + 7); } function createTemperedDateItem(date) { return { date, temperature: getRandomValueFromTemperatureRange(), }; } function renderTemperedDateItems(dateList) { const listRootNode = document.createElement('dl'); dateList.forEach(dateItem => { const { date, temperature } = dateItem; const dateNode = document.createElement('dt'); const temperatureNode = document.createElement('dd'); dateNode.title = 'Date within Month'; temperatureNode.title = 'Temperature in °C'; dateNode.textContent = date; temperatureNode.textContent = temperature; listRootNode.appendChild(dateNode); listRootNode.appendChild(temperatureNode); }); document.body.appendChild(listRootNode); } const arrMonth = Array.from( { length: 30}, (elm, idx) => (idx + 1) ); console.log({ arrMonth, temperedDateList: arrMonth.map(createTemperedDateItem), }); renderTemperedDateItems( arrMonth.map(createTemperedDateItem) );
 dl { margin: 0!important; } dl::after { clear: both; display: block; content: ''; } dt { float: left; } dd::after { display: inline; content: ' °C'; } body { margin: 0 0 100px 0!important; } .as-console-wrapper { max-height: 100px!important; }

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda