TSとは何ですか?

39.TSとは何ですか?

1. 定義

TS(TypeScript)これは Microsoft によって開発されたプログラミング言語であり、JavaScript静的型チェック、クラス、インターフェイス、ジェネリックスおよびその他の機能を提供するスーパーセットであり、大規模なプロジェクトでコードの可読性、保守性、およびパフォーマンスを向上させることができます。

2.TSのメリット

と比較してJavaScriptTypeScript次の利点があります。

  1. より厳密な型チェック:TypeScript変数、関数、オブジェクトの型を明確に定義することが必須です。これにより、コーディング段階で潜在的なエラーを検出し、コードの信頼性を向上させることができます。
  2. より適切なコード プロンプト:TypeScriptコーディング エラーを減らすために、エディターでより適切なコード プロンプトと補完を提供できます。
  3. 可読性と保守性の向上:TypeScript強力な型指定特性とより厳密な構文仕様により、コードの可読性と保守性が向上します。

さらに、TypeScriptの構文もサポートしておりES6+、既存のアプリケーションやライブラリで使用できるJavaScriptため、非常に強力なプログラミング言語です。

3. TSのデータ型

  1. ブール値
let isDone: boolean = false;
  1. 番号
let age: number = 18;
let price: number = 3.99;
let name: string = "John";
let message: string = `Hello, ${
      
      name}!`;
  1. 配列
let numbers: number[] = [1, 2, 3, 4, 5];
let strings: string[] = ["hello", "world"];
  1. タプル
let myTuple: [string, number] = ["hello", 42];
  1. 列挙
enum Color {
    
    
  Red = 1,
  Green = 2,
  Blue = 3
}

let myColor: Color = Color.Green;
  1. Any: 任意の型、任意の値を割り当てることができます。
let variable: any = "hello";
variable = 42;
  1. Void: 値を返さない関数を示します。
function logMessage(message: string): void {
    
    
  console.log(message);
}
  1. Nullおよび未定義:空の値および未定義の値を示します。
let myVar: null = null;
let myOtherVar: undefined = undefined;
  1. Never: 例外のスローや無限ループへの突入など、存在しない値を示します。
// 返回never的函数必须存在无法达到的终点
function error(message: string): never {
    
    
    throw new Error(message);
}

// 推断的返回值类型为never
function fail() {
    
    
    return error("Something failed");
}

// 返回never的函数必须存在无法达到的终点
function infiniteLoop(): never {
    
    
    while (true) {
    
    
    }
}
  1. オブジェクト: オブジェクト、配列、関数などを含む非プリミティブ型を表します。
let person: object = {
    
     name: "John", age: 18 };
let myArray: object[] = [{
    
     name: "John" }, {
    
     name: "Jane" }];
  1. 不明: 不明なタイプを表します。他のタイプと似ていますが、より安全であり、自由に割り当てることはできません。
let myUnknown: unknown = "hello";
// 报错:Property 'toUpperCase' does not exist on type 'unknown'.
myUnknown.toUpperCase();

おすすめ

転載: blog.csdn.net/weixin_42560424/article/details/129662556