forEach(callback, thisArg) {
		let i = 0;
		const children = this.getChildren();

		const len = children.length;

		if (typeof callback !== "function") {
			throw new Error(callback + " is not a function");
		}

		while (i < len) {
			callback.call(thisArg ?? this, children[i], i, children);
			i++;
		}
	}
The forEach() method executes a provided function once per child element. <br>
the callback function is invoked with three arguments: <br>
   - The current element being processed in the array <br>
   - The index of element in the array. <br>
   - The array forEach() was called upon. <br>
@param {Function} callback - fnction to execute on each element
@param {object} [thisArg] - value to use as this(i.e reference Object) when executing callback.
@example
// iterate through all children of this container
container.forEach((child) => {
   // do something with the child
   child.doSomething();
});
container.forEach((child, index) => { ... });
container.forEach((child, index, array) => { ... });
container.forEach((child, index, array) => { ... }, thisArg);