文は、指定したオブジェクトの列挙可能プロパティに対して、順不同で反復処理をします。各プロパティに対して、指定された文を実行できます。異なるプロパティ名が代入されます。objectこのオブジェクトの列挙可能プロパティに対して反復処理がされます。ループは列挙可能プロパティに対してのみ反復されます。列挙可能でないプロパティを継承しています。(プロトタイプチェーンで対象オブジェクトに近いプロパティは、親プロトタイプのプロパティを上書きする)。オペレーターを見てください}。プロパティがある反復で修正されて、その後に訪問されたなら、ループにより公開される値は後の時点での値となります。訪問される前に削除されたプロパティは、それから後には訪問されません。オブジェクトに対する反復が起きている中でそのオブジェクトに追加されたプロパティは、訪問されるかもしれませんし反復から省略されるかもしれません。一般的に、現在訪問しているプロパティ以外のものに関しては、反復の間はオブジェクトにプロパティを追加、修正、または削除しないのが一番です。追加したプロパティが訪問されるか、(現在のもの以外の)修正したプロパティが修正される前または後に訪問されるか、または削除したプロパティが削除される前に訪問されるかといったことには、何の保証もありません。繰り返しには使うべきではありません。配列のインデックスは単に整数値の名前で列挙できるプロパティであり、そうでないと一般的なオブジェクトのプロパティとして一意になりません。特定の順序で並べられる保証はありません。ループ文はすべての列挙できるプロパティを返し、その中には非整数型やそれを引き継いだインデックス名があります。繰り返しの順序が実装依存なため、配列の繰り返しは要素を一貫した順番で参照することになるとは限りません。