Kind )を動的に最適化します。 主な種類と速度順: 1. PACKED_SMI_ELEMENTS : 隙間なく、小さな整数(SMI) のみが格納されている状態 2. PACKED_DOUBLE_ELEMENTS : 浮動小数点数が含まれる状態 3. PACKED_ELEMENTS : 任意のJS 値が格納される状態(数値は HeapNumber として格納) PACKED ( 密) vs HOLEY ( 疎): [1, 2, 3] のような隙間のない配列は PACKED となり高速です [1, , 3] のように要素が抜けている配列は HOLEY となり低速になります 補足: arr[1] = undefined は“ 穴” ではありません。 delete arr[1] 、離れたインデックスへの代入(例: arr[9] = 1 ) 、 length の 先行拡張などが“ 穴” を作ります。 V8 は可能な限り特化度の高い Elements Kind を維持しようとしますが、型の異なる要素が追加されると、より 一般的な種類へと基本的に一方向の遷移(降格)が発生します (同じ配列は原則戻りません。新しい配列を生成すれば PACKED にできます) 。