JavaScriptにおけるスパース配列
配列のキーに飛びがある場合、 スパース配列 となることがあります。 それがどのようなものか見てみましょう。 例えば、次のような配列があるとします:
let arr = ['a', 'b', 'c'];
この配列に、キーが飛ぶように 新しい要素を追加してみます:
arr[4] = '!';
結果として、配列には値が undefinedの穴ができます:
console.log(arr); // ['a', 'b', 'c', undefined, '!'] と出力されます
配列の長さは、
すべての穴を含みます。
つまり、この場合の長さは
4ではなく、
5となります:
console.log(arr.length); // 5 と出力されます
次の配列の長さを調べてください:
let arr = [];
arr[3] = 'a';
arr[8] = 'b';