ts のデータ型は、記述されたコードをより標準化し、管理しやすくするために、型検証が追加されています。
1. 文字列
一重引用符 ' ' 二重引用符 " " またはバックティックを使用できます
let heroName:string = "安其拉"
2. 数字の種類(数字)
let age:Number =18;
age = 18.9
age =-17
3. ブール値
jsのようにtrue/falseを0,1に置き換えることはできません
let isSingleDog:boolean = true;
isSingleDog =false
isSingleDog =1 //报错 Type 'number' is not assignable to type 'boolean'.
4 番目、未定義および null の一意の値
これら 2 つのタイプにはそれ自体以外の価値はありません
let undf:undefined = undefined;
let nl:null = null;
5. 配列型
配列を定義するには 2 つの方法があります。
1. let 配列名: type [] = [value 1, value 2]
要素タイプの後に [] を追加して、このタイプの要素で構成される配列を示すことができます。
let list: number[] = [1, 2, 3];
2.let 配列名: Array<type> =[value 1, value 2]
2 番目の方法は、配列ジェネリックである Array<element type> を使用することです。
let list: Array<number> = [1, 2, 3];
特徴: タイプ制限無制限の長さ
6. タプル型(Tuple)
元组类型是数组的一种,表示一个已知元素数量和类型的数组,各元素的类型不必相同。 比如,你可以定义一对值分别为 string和number类型的元组。
let tup:[string,number,boolean]=['貂蝉',18,false]
tup=['吕布',20,true]
タプルの要素と長さにアクセスする
console.log(tup[0])
console.log(tup.length)
特徴: 1. タプルの長さを指定 2. 各要素の型を指定
7、列挙型
enum 型は、JavaScript の標準データ型を補足するものです。C# などの他の言語と同様、列挙型を使用して値のセットにわかりやすい名前を付けることができます。
宣言構文:
enum 枚举名{
枚举项1 =枚举值1
枚举项2 =枚举值2
}
列挙項目は通常英語または数字を使用します。
列挙値は整数を使用します。列挙値はデフォルトにすることができ、コンパイル時に 0、1、2、が自動的に追加されます。。。
//1创建枚举
enum Gender{
Boy = 1,
Girl = 2,
Unknow=3
}
console.log(Gender.Boy) //1
console.log(Gender.Girl)//2
console.log(Gender.Unknow)//3
//2使用枚举
let userSex:Gender =Gender.Boy
console.log(userSex)
if(userSex == Gender.Boy){
console.log('相等','是男的')
}else{
console.log('不是男的 ',userSex)
}
要素に値が割り当てられていない場合、デフォルトでは要素番号は 0、つまり添え字から始まります。
enum Gender2{
Boy ,
Girl ,
Unknow
}
console.log(Gender2.Boy) //0
console.log(Gender2.Girl) //1
console.log(Gender2.Unknow)//2
8. 任意のタイプ
any 任意のタイプ。通常は DOM オブジェクトを取得するときに使用されます。ユーザー入力またはサードパーティのコード ライブラリを受け取るときは、任意のコード ライブラリを使用することもできます。
9、ボイドタイプ
型なし。通常、値を返さない関数で使用されます。
10、決して入力しないでください
Never は存在しない値の
タイプで、通常は例外または無限ループをスローするために使用されます。
11、型推論
変数の宣言と初期化が同一行にある場合、変数の型の宣言は省略可能
let hero='sting'
hero=18 //报错,因为hero的类型被推断为string类型
12. ジョイントの種類
値が複数のタイプのいずれかであることを示します
文法宣言: let 変数名: 変数タイプ 1 | 変数タイプ 2 = 値
let dogName :string|null =prompt('请输入狗狗名称')
console.log('hello',dogName)