I'm trying to add a random amount of "boulder" data into my "location" data. I want to use forloop to generate a random amount of boulders to put into each "location". I can't seem to get if I should use forEach or forLoop. In essence I want to know how to generate a forloop that increments in random iterations. (i.e. index=0, randomNum = 5 => nextIndex = 0+5, randomNum = 3, thirdIndex = 5+3 and so on)
here's my randomNum generator
const randomNum = (min, max) => {
min = Math.ceil(min);
max = Math.floor(max);
return Math.floor(Math.random() * (max - min) + min)
}
and this is my boulder setting random forLoop (which doesnt work)
const allBoulders = async() => {await Boulder.find().exec()}
for (i=0, i < allBoulders.length; i+=upperCount;) {
console.log(i)
const area = location.area;
const place = location.place;
const latitude = location.latitude;
const longitude = location.longitude;
const boulderLocation = new Location({area: area, place: place, latitude: latitude, longitude: longitude});
const upperCount = indexCount + randomNum(1, 5)
const boulderSet = allBoulders.slice(indexCount, upperCount);
boulderLocation.boulders.push(...boulderSet);
// await boulderLocation.save()
console.log(boulderLocation)
indexCount = upperCount;
};
I'm getting the error:
for (i=0, i < allBoulders.length; i+=upperCount;) {
^
ReferenceError: upperCount is not defined
any help will be greatly appreciated!! thanks in advance!
Aucun commentaire:
Enregistrer un commentaire