2

実行コンテキストを把握しようとしていますが、for ループについて質問があります。

次のことを検討してください...

function copyArrayAndMutate(array, instructions) {
  let output = []
  for(let i = 0; i < array.length; i++) {
    output.push(instructions(array[i]));
  }
  return output;
}

function multiplyByTwo(input) {
  return input * 2;
}

const result = copyArrayAndMutate([1,2,3], multiplyByTwo)

大まかに言えば、これらの関数はグローバル実行コンテキストで定義され、呼び出されると、独自のローカル実行コンテキストを作成し、実行スレッドがそのコンテキストに移動し、コンテキストのエントリがスタック。

私の質問は、for ループに独自の実行コンテキストがあるかどうかです。もしそうで、実行コンテキストに独自のメモリがある場合、その for ループのコンテキスト内に出力がどのように存在するのでしょうか?

これは、for ループのローカル実行コンテキストが、copyArrayAndMutate のコンテキスト内に存在するためでしょうか。

4

2 に答える 2