Type Script基礎一(Type Script、元のデータタイプ、任意の値、タイプ推論をインストール)

3043 ワード

Type Scriptのインストール
コマンドラインを実行
npm install -g typescript
グローバル環境の下でtscコマンドをインストールします.インストールが完了したら、どこでもtscコマンドを実行できます.Type Scriptファイルをコンパイルするのは簡単です.
tsc hello.ts
私たちはType Scriptで作成したファイルを使って.tsを拡張子としてType ScriptでReactを作成すると約束しました.tsxを拡張子とします.
元のデータタイプ
JavaScriptのタイプは、元のデータタイプ(Primitive data types)とオブジェクトタイプ(Object types)の2種類に分けられます.元のデータタイプは、ブール値、数値、文字列、nullundefined、およびES 6の新しいタイプSymbolを含む.このセクションでは、前の5つのオリジナルデータタイプのType Scriptにおけるアプリケーションを紹介します.
  • ブール値
  • let isDone: boolean = false;
    
  • 数値
  • let decLiteral: number = 6;
    
  • 文字列
  • let myName: string = 'Tom';
    //      
    let sentence: string = `Hello, my name is ${myName}.
    I'll be ${myAge + 1} years old next month.`;
    
  • NullとUnidefined
  • let u: undefined = undefined;
    let n: null = null;
    
    tips:undefinedとnullはすべてのタイプのサブタイプです.すなわち、undefinedタイプの変数は、numberタイプの変数に値を割り当てることができます.
    //       
    let num: number = undefined;
    //        
    let u: undefined;
    let num: number = u;
    
  • 空き値
  • JavaScriptには空の値(Void)の概念がないので、Type Scriptでは、戻り値がない関数をvoidで表します.
    function alertName(): void {
        alert('My name is Tom');
    }
    
    任意の値
    単純なデータタイプと複雑なデータタイプが含まれています.通常のデータタイプに対しては、タイプを変更することはできません.そうでないとエラーが発生します.
    let myFavoriteNumber: string = 'seven';
    myFavoriteNumber = 7;
    
    // index.ts(2,1): error TS2322: Type 'number' is not assignable to type 'string'.
    
    ただし、anyタイプであれば、割り当て中にタイプを変更することは許可されています.
    let myFavoriteNumber: any = 'seven';
    myFavoriteNumber = 7;
    
    anyタイプですので、配列でもいいです.オブジェクトでもいいです.
  • は、任意の値において任意の属性にアクセスすることが許可された
  • である.
    let anyThing: any = 'hello';
    console.log(anyThing.myName);
    console.log(anyThing.myName.firstName);
    
  • はまた、任意の方法を呼び出すことができます.
  • let anyThing: any = 'Tom';
    anyThing.setName('Jerry');
    anyThing.setName('Jerry').sayHello();
    anyThing.myName.setFirstName('Cat');
    
    一つの変数が任意の値であることを宣言した後、その任意の動作に対して、返ってくるコンテンツの種類は任意の値であると考えられます.
    類型推論
    特定のタイプがない場合、Type Scriptは、タイプ別の推論(Type Inference)のルールからタイプを推論します.
    tsでは、以下のコードにはタイプが指定されていませんが、コンパイル時にエラーが発生します.
    let myFavoriteNumber = 'seven';
    myFavoriteNumber = 7;
    
    // index.ts(2,1): error TS2322: Type 'number' is not assignable to type 'string'.
    
    実際には、それは以下のようなものである.
    let myFavoriteNumber: string = 'seven';
    myFavoriteNumber = 7;
    
    Type Scriptは、明確な指定タイプがないときにタイプを推測します.これがタイプ推論です.
    定義されている場合は、値が与えられていないかどうかは関係なく、anyタイプと推定されますが、完全にタイプチェックされていないため、エラーが発生しません.
    let myFavoriteNumber;
    myFavoriteNumber = 'seven';
    myFavoriteNumber = 7;
    
    tips:注意変数がany型のキーポイントとして導出されたのは、変数を定義した後、即座に値が与えられたかどうかである.定義した後は値を付けず、その後はanyタイプと定義されますが、定義された後、初めての賦値はstringであると、stringタイプとして導き出されます.
    参照
    Type Script入門教程