From my colloquial understanding of creating new objects from classes in Javascript one can do the following line of code:
const exampleVariable = new exampleClass("ExampleArguement");
I apologize for this being a novice question but is it possible to create new objects within the execution of the program? Sort of "automating" the creation of objects in my code.
Let's say I need to create 100 objects.
I could technically write 100 lines initializing variables and their respective objects but I am 100% sure there is a more efficient way of doing this.
I tried looking up a solution but I couldn't quite get the phrasing right so I would appreciate it if someone pointed me in the right direction.
Many thanks.
CodePudding user response:
You can use loops for that.
For example:
class SomeClass{
constructor(id){
this.id = id;
}
}
const objects = [];
const amountOfObjects = 100;
// create objects
for (var i = 0; i < amountOfObjects; i ){
const object = new SomeClass(i 1);
objects.push(object);
}
// iterate over the array of objects created and log their id
for (var i = 0; i < objects.length; i ){
console.log(objects[i].id);
}
CodePudding user response:
You can create an object in run-time. Just with:
const myObject = {};
Or you can use the constructor if you're more used with classes:
const myObject = new Object();
Finally, answering your question, in run-time you can create 100 objects, for instance, inside of an array or another structure:
const myArray = [];
for (let index = 0; index < 100; index ) {
const myObject = { index };
myArray.push(myObject)
}
With this code you will have { index: 0 }
inside of myArray[0]
. Then, you have 100 possible variables inside the whole array.
Hope it helps.