Why? Functional approaches to JS are vastly preferred over imperative approaches.
But to answer your question: remember that forEach operates on any array (or array-like construct) and passes each instance to its lambda, so just treat the array as you normally would in a for loop, and obtain the current value with indexing (feels dirty).
The "for" loop dates back to at least 1954 with the invention of the FORTRAN programming language. The "forEach" construct is much more recent, gaining prominence with OOP languages and especially with collections. It became popular because it's much tidier and in many cases having an actual visible loop counter wasn't necessary anyway. A side benefit being that you can potentially parallelize a forEach easier than you can a "for".
I'm glad I have a choice of constructs these days, but when either is possible, I prefer to go with forEach - it's simply cleaner.
Science is the process of replacing what we "know" with what is TRUE. Politics, alas, often prefers to be the opposite.