【TypeScript教程】05—理解 TypeScript 中的類型注解

英文 | https://www.javascripttutorial.net
翻譯 | 楊小愛
在今天的教程中,我們將了解 TypeScript 中的類型注釋。
什么是 TypeScript 中的類型注解
TypeScript 使用類型注釋來顯式指定標識符的類型,例如變量、函數(shù)、對象等。
TypeScript 使用語法 : type 在標識符之后作為類型注釋,其中 type 可以是任何有效類型。
一旦使用類型注釋標識符,它就只能用作該類型。如果標識符被用作不同的類型,TypeScript 編譯器將發(fā)出錯誤。
在變量和常量中鍵入注釋
以下語法顯示了如何為變量和常量指定類型注釋:
let variableName: type;let variableName: type = value;const constantName: type = value;
在此語法中,類型注釋位于變量或常量名稱之后,并以冒號 (:) 開頭。
以下示例對變量使用數(shù)字注釋:
let counter: number;
在此之后,我們只能為計數(shù)器變量分配一個數(shù)字:
counter = 1;
如果你給 counter 變量賦值一個字符串,你會得到一個錯誤:
let counter: number;counter = 'Hello'; // compile error
錯誤:
Type '"Hello"' is not assignable to type 'number'.
我們既可以對變量使用類型注釋,也可以在單個語句中對其進行初始化,如下所示:
let counter: number = 1;
在本例中,我們?yōu)橛嫈?shù)器變量使用數(shù)字注釋并將其初始化為 1。
下面顯示了原始類型注釋的其他示例:
let name: string = 'John';let age: number = 25;let active: boolean = true;
在本例中,name 變量獲取字符串類型,age 變量獲取數(shù)字類型,活動變量獲取布爾類型。
類型注釋示例
數(shù)組
要注釋我們使用的數(shù)組類型,請使用特定類型,后跟方括號:type[] :
let arrayName: type[];
例如,以下聲明了一個字符串數(shù)組:
let names: string[] = ['John', 'Jane', 'Peter', 'David', 'Mary'];
對象
要指定對象的類型,請使用對象類型注釋。例如:
let person: {name: string;age: number};person = {name: 'John',age: 25// valid
在此示例中,person 對象僅接受具有兩個屬性的對象:字符串類型的名稱和數(shù)字類型的年齡。
函數(shù)參數(shù)和返回類型
下面展示了一個帶有參數(shù)類型注解和返回類型注解的函數(shù)注解:
let greeting : (name: string) => string;
在此示例中,我們可以將任何接受字符串并返回字符串的函數(shù)分配給 greeting 變量:
greeting = function (name: string) {return `Hi ${name}`;};
以下會導致錯誤,因為分配給 greeting 變量的函數(shù)與其函數(shù)類型不匹配。
greeting = function () {console.log('Hello');};
錯誤:
Type '() => void' is not assignable to type '(name: string) => string'. Type 'void' is not assignable to type 'string'.
總結
使用語法 : [type] 的類型注釋來顯式指定變量、函數(shù)、函數(shù)返回值等的類型。
推薦閱讀
【TypeScript教程】04—為什么選擇 TypeScript
【TypeScript教程】03—如何使用 TypeScript 編寫" Hello World "程序
【TypeScript教程】01—什么是 TypeScript?
學習更多技能
請點擊下方公眾號
![]()

