ts筆記-聲明空間

ts中存在兩種聲明空間:類型聲明空間和變量聲明空間

類型聲明

類型聲明空間用來做類型註釋

interface Bar {}
type Bas = {};

let bar: Bar;
let bas: Bas;

// 但是不能當作變量使用
interface Bar {}
const bar = Bar; // Error: "cannot find name 'Bar'"

變量聲明

變量聲明空間除了可以做類型註釋,可以當作變量使用

class Foo {}

// 當作類型使用
let foo: Foo;

// 當作變量使用
const someVar = Foo;
const someOtherVar = 123;

但要記住,不要把變量聲明和變量空間聲明搞混了

// 這是變量聲明,不能用做類型註釋
const foo = 123;
let bar: foo; // ERROR: "cannot find name 'foo'"
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章