配列の要素の数を取得する

配列の length プロパティを参照すると、配列の最後のインデックス に 1 を加え値を取得することができます。この値は通常配列に含まれる要素の数となります(違う場合についても解説します)。ここでは JavaScript で配列の要素の数を取得する方法について解説します。

(Last modified: )

lengthプロパティを参照する

配列の length プロパティを参照するには次の書式を使用します。

配列名.length

length プロパティは配列の最後のインデックスに +1 した値を返します。次のサンプルをみてください。

let data = [10, 42, 52];
console.log(data.length);
>> 3

配列の最後のインデックスは 2 ですので(インデックスは 0 から始まります)、 配列の length プロパティは 3 を返します。結果として length プロパティを参照すると配列に含まれる要素の数となります。

lengthプロパティが要素の数とならない場合

JavaScript の配列は要素が連続している必要がありません。次のサンプルをみてください。

let data = [];
data[0] = 10;
data[5] = 35;

console.log(data);
>> [10, empty, empty, empty, empty, 35]

この配列ではインデックス 0 の要素とインデックス 5 の要素しか存在しません。要素の数は 2 つとなります。

この配列の length プロパティを参照してみると、 length プロパティは最後のインデックスに +1 した値となりますので 6 を返します。

let data = [];
data[0] = 10;
data[5] = 35;

console.log(data.length);
>> 6

このように配列の要素が連続して存在していない場合には length プロパティの値が必ずしも配列の要素の数と一致しませんのでご注意ください。

lengthプロパティに値を代入して要素の数を増減させる

配列の length プロパティは参照するだけでなく値を代入することができます。 length プロパティの値が変化すると、それに伴って配列の要素が増えたり減ったりします。

次のサンプルでは元々配列の要素の数が 3 でしたが、 length プロパティに 5 を設定することで要素の数を増やしています。

let data = [10, 42, 52];
data.length = 5;

console.log(data);
>> [10, 42, 52, empty, empty]

次のサンプルでは元々配列の要素の数は 5 でしたが、 length プロパティ に 2 を設定することで要素を削除して減らしています。

let data = [10, 42, 52, 28, 26];
data.length = 2;

console.log(data);
>> [10, 42]

このように配列の length プロパティに値を設定することで、配列の要素の数を増やしたり減らしたりすることができます。

-- --

JavaScript で配列の要素の数を取得する方法について解説しました。

( Written by Tatsuo Ikura )

Profile
profile_img

著者 / TATSUO IKURA

プログラミングや開発環境構築の解説サイトを運営しています。