I want to find how many 25 can fit into a number example 100 should return [25, 25, 25 ,25]
At the moment I have this code
let quarterAmount = parseInt(argument / 25)
sum.push( 25 * quarterAmount )
However when I return the sum variable it will give me [100] instead of the desired array of 25.
I have tried many variations of my code and I always get the same results
sum.push( '25' * quarterAmount )
sum.push( [25 * quarterAmount] )
sum.push( [25] * quarterAmount )
I want to be able to add quarterAmount amount of [25] to my array, how can I acomplish this?
Something like this?
const howManyTimes = (a, b) => new Array(b/a).fill(a)
console.log(howManyTimes(25, 100))
new Array(n) creates an array with n items, then fill sets all the items to the same value.
The naive solution would be to make a loop like this:
let quarterAmount = floor(argument / 25);
sum = [];
for (let i=0; i < quarterAmount; i++) {
sum.push(25);
}
But there's a more convenient way of achieving what you want:
let quarterAmount = floor(argument / 25);
sum = Array(quarterAmount).fill(25);
Here is the related documentation (about Array.fill): https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/fill
On a side note, I think you shouldn't use parseInt, but rather floor, ceil or round. parseInt will floor your value, but your intent is not to parse something, it is to round/floor/ceil something.