1. 安装typeScript
npm install -g typescript
以上命令会在全局环境下安装 tsc 命令,安装完成之后,我们就可以在任何地方执行 tsc 命令了
2. 编译一个 TypeScript
tsc fileName.ts
3. 例子 hello.ts
function sayHello(person: string) {
return 'Hello, ' + person;
}
let user = 'Tom';
console.log(sayHello(user));
编译得到 hello.js
function sayHello(person) {
return 'Hello, ' + person;
}
var user = 'Tom';
console.log(sayHello(user));
注意:编辑器中会提示错误,编译的时候也会出错,但是还是生成了 js 文件
可以把 let user = 'Tom' 改为 let user = [1, 2, 3]后编译在看看hello.js文件
4.基础
let isDone: boolean = false;
let decLiteral: number = 6;
let myName: string = 'Tom';
let u:undefined = undefined;
let n:null = null;
任意值any
let a:any = 'serven'
a = 7
类型推论
let a = 'serven' // a: string
a = 7 // index.ts(2,1): error TS2322: Type 'number' is not assignable to type 'string'.
let a = 'serven' 等价于 let a:string = 'serven'
联合类型
联合类型(Union Types)表示取值可以为多种类型中的一种。
let a:string | number
a = 'serven'
a = 7
对象的类型——接口
在 TypeScript 中,我们使用接口(Interfaces)来定义对象的类型。
interface Person {
name: string,
age: number
}
let tom: Person = {
name: 'tom',
age: 7
}
// tom 格式必须和接口一直,属性意义对应上,不能多也不能少
如果要少,要把接口的数据对象设置为可选属性,加个问号
interface Person {
name: string,
age?: number
}
let tom: Person = { name: 'tom' }
如果要多个属性 可以添加可一个任意属性值
interface Person {
name: string,
age: number,
[propName: string]: any
}