#7 TypeScriptで学ぶ配列の基本
TypeScriptの配列は、JavaScriptと同じ操作方法を使いながら、中に入れられる値の型をあらかじめ決められるのが特徴です。この記事では、TypeScriptにおける配列の基本と、型による安全性を解説します。
型付きの配列を作る
const fruits: string[] = ["りんご", "みかん", "ぶどう"];
string[]という書き方で、「文字列だけが入る配列」であることを明示します。Array<string>という書き方も同じ意味で使えます。
基本的な操作
要素へのアクセスや追加・削除は、JavaScriptと同じです。
fruits.push("メロン");
console.log(fruits[0]);
ただし、fruits.push(123)のように、決めた型と違う値を追加しようとすると、TypeScriptがエラーとして教えてくれます。
複数の型を許容する配列
文字列と数値の両方を入れたい場合は、「もしくは」を表す|を使って型を指定します。
const mixed: (string | number)[] = ["りんご", 1, "みかん"];
要素数が決まったタプル型
配列と似た仕組みに「タプル型」があります。配列が同じ型の要素が並ぶのに対し、タプルは要素ごとに異なる型・決まった個数を指定できます。
let person: [string, number] = ["太郎", 20];
// person = [20, "太郎"]; // コンパイルエラー(順番・型が違う)
「名前と年齢のペア」のように、意味の異なる値を少数まとめて扱いたい場合に便利です。
readonlyで変更を禁止する
配列の中身を書き換えられたくない場合は、readonlyを付けると、pushのような変更操作自体がコンパイルエラーになります。
const fixedFruits: readonly string[] = ["りんご", "みかん"];
// fixedFruits.push("ぶどう"); // コンパイルエラー
TypeScriptならではの注意点
配列の型を決めておくメリットは、要素を取り出して使うときにも発揮されます。string[]から取り出した値には文字列専用の機能を安心して使え、間違って数値専用の機能を呼び出そうとするとエラーになります。この安全性が、TypeScriptで配列を扱う大きな利点です。
まとめ
TypeScriptの配列はJavaScriptと同じ操作をしつつ、型によって中身を保証できるのが特徴です。タプル型やreadonlyも活用し、積極的に型を明示して安全性を活かしましょう。
本ページはプロモーションを含みます。
参考書籍(PR)
TypeScriptをもっと学びたい方には「プロを目指す人のためのTypeScript入門」がおすすめです。
PR
コードを書かずに自動化したい方へ
「学んだけど自分の作業に組み込む時間がない」という方向けに、ダブルクリックで動く Windows専用の自動化ツールをオーダーメイドで作成しています。気になる方は こちらをご覧ください。
コメント
コメントを投稿