TypeScript 新手指南
  • 前言
  • 簡介
    • 什麼是 TypeScript
    • 安裝 TypeScript
    • Hello TypeScript
  • 基礎
    • 原始資料型別
    • 任意值
    • 型別推論
    • 聯合型別
    • 物件的型別——介面
    • 陣列的型別
    • 函式的型別
    • 型別斷言
    • 宣告檔案
    • 內建物件
  • 進階
    • 型別別名
    • 字串字面量型別
    • 元組
    • 列舉
    • 類別
    • 類別與介面
    • 泛型
    • 宣告合併
    • 延伸閱讀
  • 工程
    • 程式碼檢查
  • 感謝
Powered by GitBook
On this page

Was this helpful?

  1. 簡介

Hello TypeScript

我們從一個簡單的例子開始。

將以下程式碼複製到 hello.ts 中:

function sayHello(person: string) {
    return 'Hello, ' + person;
}

let user = 'Tom';
console.log(sayHello(user));

然後執行

tsc hello.ts

這時候會產生一個編譯好的檔案 hello.js:

function sayHello(person) {
    return 'Hello, ' + person;
}
var user = 'Tom';
console.log(sayHello(user));

TypeScript 中,使用 : 指定變數的型別,: 的前後有沒有空格都可以。

上述例子中,我們用 : 指定 person 引數型別為 string。但是編譯為 js 之後,並沒有什麼檢查的程式碼被插入進來。

TypeScript 只會進行靜態檢查,如果發現有錯誤,編譯的時候就會報錯。

下面嘗試把這段程式碼編譯一下:

function sayHello(person: string) {
    return 'Hello, ' + person;
}

let user = [0, 1, 2];
console.log(sayHello(user));

編輯器中會提示錯誤,編譯的時候也會出錯:

index.ts(6,22): error TS2345: Argument of type 'number[]' is not assignable to parameter of type 'string'.

但是還是產生了 js 檔案:

function sayHello(person) {
    return 'Hello, ' + person;
}
var user = [0, 1, 2];
console.log(sayHello(user));

TypeScript 編譯的時候即使報錯了,還是會產生編譯結果,我們仍然可以使用這個編譯之後的檔案。

Previous安裝 TypeScriptNext基礎

Last updated 4 years ago

Was this helpful?

let 是 ES6 中的關鍵字,和 var 類似,用於定義一個區域性變數,可以參閱 。

如果要在報錯的時候終止 js 檔案的產生,可以在 tsconfig.json 中配置 noEmitOnError 即可。關於 tsconfig.json,請參閱()。

let 和 const 命令
官方手冊
中文版
上一章:安裝 TypeScript
下一章:基礎