このエントリーをはてなブックマークに追加

TypeScriptメモ

変数宣言

TypeScriptでは「let」を利用して変数宣言をします。

let 変数名 : データ型 = 初期値;
let 変数名 : データ型;
let 名前 = 初期値;
初期値を省略した場合は「undefined」となります。
データ型を省略した場合にはどんな型の値も設定できる変数となります。

基本的なデータ型

基本的なプリミティブデータ型

boolean : 真偽値

真偽値を扱うためのデータ型
true or false として利用します。

number : 数値

数値を扱うためのデータ型
整数値(※内部的には浮動少数点値として扱われるため非常に大きい値を扱う場合には誤差が発生する可能性があります)浮動小数点値も格納することが可能
0xから始まる表記の場合は16進数を指定することができます。
特殊な値としてNaN(非数値)、Infinity(無限大)という値が格納される場合があります。
any変数に文字列を代入して数値として計算した場合はNaNとなります。
0を除算した場合にはInfinityとなります。

string : 文字列

文字列(テキスト)を扱うためのデータ型
文字列を指定するには「"」(ダブルクォート)「'」(シングルクォート)にてテキストを囲みます。
「`」(バッククォート)で囲むとその間の改行はそのまま改行として扱われます。また${変数名}の形式記載することで他の変数の値を埋め込むことができます。

基本的なデータ型を組み合わせてオブジェクトや配列(array)を作成することができます。

nullとundefined

変数に初期値を指定せずに宣言した場合は何も使用されていない「undefined」が設定されます。
使用されている変数に明確に変数に何も格納されていないことを示すために設定する値として 「null」が設定されます。

演算子

代入演算子「=」

変数に値を格納する際に使用します。

比較演算子「==」「!=」「===」「!==」

左辺と右辺が同じ値か判断する際に使用します。
同じ値の場合 true, 異なる値の場合 falseとなります。
NaN(非数値)かどうかの確認の場合はisNaNを利用します。
isNaN(NaN);  // => true

論理否定(NOT)演算子「!」

比較演算子の結果やboolean変数の値で trueとfalseを逆にしたい場合に使用します。

論理積(AND)演算子「&&」

複数の比較演算子の結果やboolean変数の値についてどちらもtrueであるかの確認をする場合に使用します。

論理和(OR)演算子「||」

複数の比較演算子の結果やboolean変数の値についてどれか一つでもtrueであるかの確認をする場合に使用します。

比較演算子「<」「<=」「>」「>=」

2つの数値の大小を比較するために利用します。
数学の不等号と同じ意味を持ちます。

算術演算子「+」「-」「」「/」「%」「**」*

数学の四則演算と同様に計算を実施します。
+ 足し算
- 引き算
* 掛け算
/ 割り算
% 割り算(余り)
** 累乗

文字列連結演算子「+」

演算子+は左辺と右辺の値がどちらも数値の場合には加算演算子として働きますがどちらかの値が文字列の場合には文字列連結演算子として働きます。

複合代入演算子「+=」「-=」「*=」「/=」「%=」「**=」

変数の値に、算術演算子と別の値を指定して計算を行い、その結果をそのまま元の変数に代入する場合には複合代入演算子が使用できます。

インクリメント演算子「++」、デクリメント演算子「--」

数値を1ずつ増加猿場合にはインクリメント演算子、1ずつ減少させる場合にはデクリメント演算子を利用します。

列挙型 enum と 定数 const

列挙型enum

複数の定数を一つにまとめて新しいデータ型のように利用できるものです。

書式

enum 列挙型の名前 {
   メンバー1の名前,
   メンバー2の名前
}

enum Human {
   Man,
   Woman
}

let user01 : Human = Human.Man;
console.info(user01 == Human.Man);

定数Const

事前に決めておいた変更できない値を定義する場合には「定数Const」を利用します。
const 定義の名前 = 

定数列挙型 Const enum

TypeScriptの定数はTypeScriptの文法の中でチェックされる内容です。定数列挙型のconst enumはビルド時に実際の値が埋め込まれて、後から本当に列挙型の値を変更することができません。
const enum WeekDays {
   Monday = "Monday",
   TuseDay = "Tuseday",
   WednesDay = "WednesDay",
   ThursDay = "ThursDay",
   Friday = "Friday",
   Saturday = "Saturday",
   Sunday = "Sunday"
}

条件分岐 if, switch

if 〜 else構文

実行時に条件に合致したブロックが実行されるのがif~else構文です。
if ( 状態1 ) {
   // 状態1の場合に実施される。
   // else ブロックは省略可能
}

if ( 状態1 ) {

} else if ( 状態2 ) {
   // 状態1ではなくかつ状態2の場合に実施されます。
} else {

}

条件演算子(三項演算子)

条件にて値を設定するようなケースには条件演算子(三項演算子)を利用するとif~elseを記載するより簡潔に記載することができます。
let birthMonth = 12
let value = (birthMonth == 12) ? "happy month" : "normal month"

switch

実行時に定義していた値と合致する場合に対応する分が実行される構文がswitchです。
switch() {
   case 値1 :
      console.log("値1の場合に実行");
      break;
   case 値2 :
   case 値3 :
      console.log("値2, 値3の場合に実行");
      break;
   default :
      console.log("caseに一致しない場合に実行される。");
      break;
}
※注 breakを記載しない場合次の条件(case)が評価され実行されます。