【TypeScript】forEach is not a functionというエラーが出力されたら

仕事中にAngular(TypeScript)と触ってるときに遭遇しました。参考にしたのはJavaScriptのページですが、だいたい一緒ですよね……?

objs.forEach((obj: any) => {
  /* 処理 */
} );

こう書いて実行したところ…

Error: Uncaught (in promise): TypeError: files.forEach is not a function

怒られました。

下記のように呼び出す必要があるらしいです。

Array.prototype.forEach.call(objs, (obj: any) => {
  /* 処理 */
} );

callの最初の引数としてobjsを渡すんですね。

(参考: forEach is not a function error with JavaScript array - Stack Overflow