これまでは値をひとつずつ扱ってきた。今回は、複数の値をまとめる方法を見よう。順番のある並びには配列を使う。
const fruits = ['apple', 'orange', 'banana'];
console.log(fruits[0]);
console.log(fruits.length);
fruits[0] は最初の apple ですか? どうして0から数えるんでしょう。
多くのプログラミング言語では、配列の位置を0から数える。length は要素の個数だから、この場合は3だ。最後の位置は length - 1 になる。
あとから要素を足すこともできる。
const fruits = ['apple', 'orange'];
fruits.push('banana');
console.log(fruits.length);
const なのに、中身は増やせるんですか?
いい疑問だ。const が禁じているのは、その名前へ別の値を代入し直すことだけだよ。配列そのものを入れ替えることはできないけれど、中身の出し入れはできる。
ひとつの対象について複数の情報をまとめたいときは、オブジェクトが向いている。
const user = {
name: 'JavaScript',
level: 1,
isActive: true,
};
console.log(user.name);
配列は位置で、オブジェクトは name のような名前で値を取り出すんですね。
いい整理だ。この名前と値の組をプロパティと呼ぶ。同じ役割の値を順番に並べるなら配列、関連する情報を名前つきでまとめるならオブジェクトだ。
この2つを組み合わせれば、複数のユーザーや商品のようなデータも表現できる。
const users = [
{ name: 'TypeScript', level: 3 },
{ name: 'JavaScript', level: 1 },
];
console.log(users[1].name);
記号は増えましたが、外側から「配列の2番目、その中の name」と読めますね。
その読み方で大丈夫。実は、ここまで扱ってきた値には、すべて種類がある。次はいよいよ、TypeScriptの中心にある型を言葉にしよう。

