今日はTypeScriptのビルドインのデータタイプについて説明します。前回までの記事を理解していることが条件になりますのでご確認お願いします。 TypeScriptのビルドインタイプ TypeScriptにはJavaScriptのデータタイプに加えられたものがあります。 JavaScript TypeScript numberstringbooleannullundefinedobject 左に加えて…anyunknownneverenumtuple ではテキストエディタを開いてコードを書いていきましょう! 数字を見やすくする TypeScriptでは、数字のk(キロ:カンマの部分)はアンダースコアで記載することができます。 下記の例のように123_000_000は123,000,000と同じになります。もちろんこれはオプショナルなので使っても使わなくてもOKです。 データタイプを宣言する 下記のようにデータタイプを宣言することができます。 ここで、初期の変数に値がある場合は変数のデータタイプをデフォルト値で固定できるのでデータタイプを外すこともできます。 ここでVSCodeでカーソルを変数の値にホバーするとデータタイプが表示されることが確認できます。 しかしlet myName;のようにデフォルト値を設定しないとTypeScriptが変数のデータタイプを判定することができません。 データタイプ:any では.tsファイルに下記のような関数を作成してみます。 そうすると、因数のdocumentがハイライトされエラーが出ます。 エラーの内容はParameter ‘document’ implicitly has an ‘any’ typeで、documentにanyタイプのパラメーターが使用されています、です。 では、下記のようにanyのデータタイプを記載します。 これでエラーが消えましたね。これは、データがどのタイプ(any)でも受け付けますと指示しています。これで開発する際にデータタイプを確認させるような仕組みになっているわけですね。 もし、このエラーを非表示にしたい場合はtsconfig.jsonファイルから設定を変更することができます。 このようにnoImplicitAnyをfalseにすることでエラーがなくなりました。実際にはTypeScriptはデータタイプのチェックのために使用するのでこの変更はできるだけしないようにしましょう。 配列:Array JavaScriptの配列(Array)ではどのデータを使用することができます。 しかし、このようなストリングと数字の混ざったデータを計算させようとすると1+1=11のようになってしまい問題になりますね。 では、下記の様に数字のみの配列であることを宣言します。 もしくは、デフォルト値が数字だけの場合はnumber[]を外してもTypeScript側でデータタイプがnumber[]であることを認識してもらえます。 空の配列で数字のデータを受け入れる場合は下記の様にデータタイプを宣言しておくようにします。 VSCodeの推測機能 さらにTypeScriptを使う事でできるおまけの機能を紹介します。 TypeScriptではデータタイプを指定するのでVSCodeが次に来るメソッド等を予測して表示してくれます。 JavaScriptではできないことなので素晴らしいですね。 Tuple Pythonを使ったことがある人は見たことがあるかもしれません。Tuple(タプル)はデータタイプが固定された配列のことです。よって配列の長さも変更できません。 このように上記のTupleに3つ目のデータを追加しようとしたりデータタイプを変更したりしようとするとエラーになります。 それ以外の変更(値の変更)は可能です。 また、TypeScriptの強みとしてこのように数字のデータに対してのメソッドと次のスクリーンショットのストリングに対するメソッドがそれぞれ表示されるのでとても使いやすくなります。 列挙型(Enums) 列挙型は、関連する値の集合を編成する方法です。これを使用することで関連する変数をセットとして一つのenum内にまとめることができます。 下記のsmallとSize.Smallは同じものになります。ちなみにenumで宣言する変数名は大文字で始まり、中の変数も大文字で始めることが慣習とされています。 上記のコードは下記のコマンドで実行できます。 このようにsmallとSize.Smallは同じ値になることがわかりますね。 ここでコンパイルされた.jsファイルを見ると中身がすごいことになっていることに気が付きます。 dist/index.js この変数を詳しく見てみましょう。 そうすと、データタイプがオブジェクトで返ってきました。これは変数 … Read more