TypeScript データ型とは何ですか? TypeScript 基本データ型の紹介

TypeScript データ型とは何ですか? TypeScript 基本データ型の紹介

TypeScipt データ型とは何ですか? TypeScipt は、Microsoft が開発したオープンソース プログラミング言語であり、JScipt に基づいて静的型定義を追加して構築されています。 TypeScipt は JScipt とほぼ同じデータ型をサポートし、利便性のために実用的な列挙型も提供します。この記事では、TypeScipt の基本的なデータ型について簡単に説明します。

さらに読む: 「TypeScipt と JScipt のどちらが優れているか? TypeScipt と JScipt の違い」

ブール型 (boolen) tue / flse

最も基本的なデータ型は単純な true/false 値で、JScipt および TypeScipt (他の言語と同様に) では bool と呼ばれます。

isDone: bool en = flse とします

isDone = tue // 正しい書き方

isDone = 2 // 間違った書き方

数値型 (number)

JScipt と同様に、TypeScipt 内のすべての数値は浮動小数点数です。 これらの浮動小数点数は numbe 型です。 TypeScipt は、10 進数と 16 進数のリテラルをサポートするだけでなく、ECMAScipt 205 で導入された 2 進数と 8 進数のリテラルもサポートします。

decLitel: numbe = 6 とします。hexLitel : numbe = 0xf00d とします。binyLitel : numbe = 0b00 とします。octlLitel : numbe = 0o744 とします。

文字列型(ストリング)

JScipt プログラムのもう 1 つの基本的な操作は、Web ページまたはサーバー上のテキスト データを処理することです。 他の言語と同様に、テキスト データ型を表すには sting を使用します。 JScipt と同様に、文字列を表すには二重引用符 (̶) または一重引用符 (̻) を使用できます。

let nme st: sting = “jck̶

nme = "スミス

複数行のテキストや埋め込み式を定義できるテンプレート文字列を使用することもできます。 このような文字列はバックティック (`) で囲まれ、${ unme } 形式の埋め込み式が含まれます。

let unme: sting = `Gene` let sentence: sting = `こんにちは、私の名前は ${ unme } です`

配列型 (y)

TypeScipt は JScipt と同様に配列要素を操作できます。 配列を定義する方法は 2 つあります。最初の型を要素型の後に追加して、この型の要素の配列を示すことができます。

let list: numbe = [, 2, 3]; //ここには数字のみ入力できますlet list: sting = [̺ed̻, ̺blue̻, ̺yellow̻]; //ここには文字列のみ入力できます

2 番目の方法は、配列ジェネリック Ay<要素型> を使用することです。

let list: Ay<numbe> = [, 2, 3]; //ここには数字しか書けませんlet list: Ay<sting> = [̺ed̻, ̺blue̻, ̺yellow̻]; //ここには文字列しか書けません

タプル型

タプル型を使用すると、要素の数と型が既知の配列を表すことができます。要素は同じ型である必要はありません。 たとえば、値がそれぞれ sting 型と numbe 型であるタプルのペアを定義できます。

let x: [sting, numbe]; x = [̺hello̻, 0] //正しい書き方x = [0, ̺hello̻] //間違った書き方

公式ドキュメントにはいくつかの拡張機能が記載されています: 既知のインデックスを持つ要素にアクセスすると、正しい型が取得されます

console.log(x[0].subst()); // OK console.log(x.subst()); // Eo、̺numbe̻は̺subst̻ではありません

範囲外の要素にアクセスする場合は、代わりにユニオン型が使用されます。

x[3] = ̺wold̻; // OK、文字列は (sting | numbe) 型に代入可能ですconsole.log(x[5].toSting()); // OK、̺sting̻ と ̺numbe̻ は両方とも toSting を持ちますx[6] = tue; // Eo、bool は (sting | numbe) 型ではありません

列挙型 (enum)

enum 型は、JScipt 標準データ型の補足です。 C# や他の言語と同様に、列挙型を使用して値のセットにわかりやすい名前を付けることができます。

列挙型カラー {赤、緑、青}

let c: Colo = Colo.Geen; //出力値は

デフォルトでは、要素は 0 から番号が付けられます。 メンバー値を手動で指定することもできます。 たとえば、上記の例を変更して番号付けを開始します。

enum Colo {Red = , Geen, Blue} let c: Colo = Colo.Geen; //出力値は2です

前の割り当ての後に値が続かない場合は、後続の割り当ては前の割り当てに基づいて行われ、その後に + が続きます。または、すべての値を手動で割り当てます。

enum Colo {Red = 、Geen = 2、Blue = 4}とします。c: Colo = Colo.Geen;

あらゆるタイプ(ny)

場合によっては、プログラミング段階で型がまだ明確でない変数に型を割り当てたいことがあります。 これらの値は、ユーザー入力やサードパーティのコード ライブラリなどの動的コンテンツから取得される場合があります。 この場合、型チェッカーでこれらの値をチェックするのではなく、コンパイルフェーズを直接通過させるようにします。 次に、ny 型を使用してこれらの変数をマークできます。

let notSue: ny = 4; notSue = “mybe sting insted—; notSue = flse; // oky、間違いなくブール値

ny 型は、データの一部の型のみがわかっている場合にも便利です。 たとえば、異なるタイプのデータを含む配列があるとします。

list: ny = [, tue, “fee̶]; list = 00;とします。

OID タイプ

ある意味では、oid タイプは ny タイプの反対のようなもので、どのタイプも存在しないことを表します。 関数が値を返さない場合、戻り値の型は oid になることがよくあります。

function wnUse(): oid { let(“これが私の勝利のメッセージです̶); }

戻る場合は、返された対応するデータに基づいて選択を行います。

関数 wnUse(): 数値 { etun 23 }

oid 型の変数を宣言するのはあまり役に立ちません。undefined と null しか割り当てられないからです。

使用不可にします: oid = undefined;

null および未定義の型

TypeScipt では、 undefined と null にはそれぞれ undefined と null と呼ばれる独自の型があります。 oid と同様に、それらの型自体はあまり役に立ちません。

u: undefined = undefined とします。n : null = null とします。

デフォルトでは、null と undefined はすべての型のサブタイプです。 つまり、numbe 型の変数に null と undefined を割り当てることができます。ただし、RstictNullChecks フラグを指定すると、oid とそれぞれの値にのみ null と undefined を割り当てることができます。 これにより、多くの一般的な問題を回避できます。 どこかに sting または null または undefined を渡したい場合は、ユニオン型 sting | null | undefined を使用できます。

旧タイプ

nee 型は、決して存在しない値の型を表します。 たとえば、nee 型は、常に例外をスローするか、値をまったく返さない関数式または矢印関数式の戻り値の型です。また、決して真にならない型ガードによって制約されている変数も、nee 型になることがあります。

nee 型は任意の型のサブタイプであり、任意の型に割り当てることができます。ただし、nee のサブタイプや割り当て可能な型はありません (nee 自体を除く)。 ny を nee に割り当てることもできません。新しい型を返す関数をいくつか示します。

// nee を返す関数は到達不可能なエンドポイントを持つ必要がありますfunction eo(messge: sting): nee { thow new Eo(messge); }

// 推論される戻り値の型は nee ですfunction fil() { return (“Something filed̶); }

// neeを返す関数は到達不可能なエンドポイントを持つ必要がありますfunction infiniteLoop(): nee { while (tue) { } }

<<:  Magento ウェブサイトでメンテナンス モードを有効にする方法

>>:  WooCommerce アカウントのオプション設定に関するチュートリアル

推薦する

Thawte の https 証明書の利点は何ですか?

過去 10 年間にわたり、Thwte は 200 を超える国と地域で高品質の https 証明書 (...

SEO 最適化ウェブサイト (5 つの無料自習 SEO テクノロジー ウェブサイトを共有し、SEO を素早く学習)

SEOを素早く学ぶための無料の自習SEO技術ウェブサイト5つを紹介SEO を無料で学ぶ場合、検討す...

運用計画には何が含まれますか?

運用計画とは何ですか?運用計画とは何ですか?運用計画には、現在の問題分析、競合他社の調査具体的な運用...

コンテンツ運用(運用とは何か?自社メディア運用には運用を選ぶ必要があるのか​​?)

代理店業務とは何ですか?セルフメディア運営にはエージェント選びは必要でしょうか?インターネットの普及...

サーバーにSSL証明書をインストールする方法

サーバーに SSL 証明書をインストールするにはどうすればいいですか? SSL 証明書を購入したら、...

独立局ブランドマーケティング(3大トレンド、5大マーケティング戦略、DTCブランド独立局の売上が上昇中!)

3大トレンド、5大マーケティング戦略、DTCブランド独立サイトの売上が急上昇中! DTC モデルで...

電子商取引の運用ではどのようなデータが報告されますか? (Douyin電子商取引商店ビジネス環境レポート:多次元サービス商店需要の共同構築と発展)

Douyin電子商取引業者のビジネス環境レポート:多次元サービス業者は発展を構築する必要がある最近...

com ドメイン名の年間料金はいくらですか?

.com は現在、国際的に最も人気のあるトップレベル ドメイン名の形式であり、ほとんどの国際企業は ...

ASO プロモーション戦略 (ASO とは何か、アプリをプロモーションする方法)

ASOとは何か、アプリを宣伝する方法前面に書かれている内容:実は、よく考えてみると、私は本当に A...

農業地域ブランド計画(郷土地域ブランド構築の「5段階」基本モデルの構築)

郷土ブランド構築のための「5段階」基本モデルの構築農業の近代化が進むにつれ、わが国では郷鎮レベルでの...

春節マーケティングプロモーションプラン(春節マーケティング企画プラン)

春節マーケティング計画1. プロモーション活動1. 春節前に「新年を迎えて大幅割引」をテーマにしたプ...

製品マーケティングおよびプロモーション計画(製品月間マーケティング計画、製品年間マーケティング計画、市場マーケティング計画)

月次製品マーケティング計画、年次製品マーケティング計画、マーケティング計画以下は読者の参考までに、あ...

楽成ブランドマーケティング戦略(張陸:ブランドIP運用とマーケティング手法)

張 陸: ブランド IP 運用とマーケティング手法コース丨文化創造エンパワーメント-商業IP運用第1...

アプリ運営者はどのようなデータに注目しているのか(こうしたデータの見方を学ぶのがプロのショートビデオ運営者です!)

これらのデータを読み取ることを学ぶことによってのみ、プロのショートビデオオペレーターになることができ...