.forEach seems like some loop

Is .forEach some kind of loop? Are there instances where a for…of will do the same thing as a .forEach?