Well, yes and no.
So, the forEach() method is preferred over an imperative for loop in almost all circumstances.
There are also other really useful methods to perform operations on a collection rather than looping with a for statement. For example, .map() for transforms, .filter() to pick and choose elements, .find() for searching, and (really useful) .reduce() for rolling up data. I use that last one a lot.
(i) for - loops through a block of code a specified number of times
(ii)while - loops through a block of code while a specified condition is true