Quiero encontrar cuántos 25 pueden caber en un número ejemplo 100 debería devolver [25, 25, 25 ,25]
Por el momento tengo este código
let quarterAmount = parseInt(argument / 25) sum.push( 25 * quarterAmount )
Sin embargo, cuando devuelvo la variable de sum , me dará [100] en lugar de la matriz deseada de 25 . He probado muchas variaciones de mi código y siempre obtengo los mismos resultados.
sum.push( '25' * quarterAmount ) sum.push( [25 * quarterAmount] ) sum.push( [25] * quarterAmount ) Quiero poder agregar una cantidad quarterAmount de [25] a mi matriz, ¿cómo puedo lograr esto?
¿Algo como esto?
const howManyTimes = (a, b) => new Array(b/a).fill(a) console.log(howManyTimes(25, 100)) new Array(n) crea una matriz con n elementos, luego fill establece todos los elementos en el mismo valor.
La solución ingenua sería hacer un bucle como este:
let quarterAmount = floor(argument / 25); sum = []; for (let i=0; i < quarterAmount; i++) { sum.push(25); }Pero hay una manera más conveniente de lograr lo que quieres:
let quarterAmount = floor(argument / 25); sum = Array(quarterAmount).fill(25);Aquí está la documentación relacionada (sobre Array.fill): https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/fill
En una nota al margen, creo que no deberías usar parseInt , sino floor , ceil o round . parseInt bajará su valor, pero su intención no es analizar algo, es redondear/pisar/techar algo.