基础类型
- 布尔值: let isDone: boolean =false;
- 数值: let decLiteral:number =6;
- 字符串: let name: string ="bob";
- 数组: let list: number[] = [1,2,3];
- 任意值:let notSure: any =4;
- 不存在:
- 元祖: let x: [string,number]; *当访问一个越界的元素,会使用联合类型替代
- 枚举: enum Color {Red = 1, Green, Blue};let c: Color = Color.Green; *默认情况下,从0开始为元素编号。 你也可以手动的指定成员的数值如Red=1
- 解构: let [first, second] = [1,2];
接口
*
在TypeScript里,接口的作用就是为这些类型命名和为你的代码或第三方代码定义契约
interface LabelledValue {
label: string; //必须
color?: string;//可选
readonly x: number;//只读
}
class Clock implements
LabelledValue
{
currentTime: Date;
constructor(h: number, m: number) { }
}
interface Square extends Shape { //接口可以继承多个接口
sideLength: number;
}
类
- 继承
class Snake extends Animal {}
- public: 默认的
- private: 不能在外部访问
- protected: 可在派生类中访问
- readonly: 必须在构造函数中初始化
- static: 可以使用 类名.静态属性名 来访问
- 存取器set/get --属性设置为私有 通过set/get方法访问,以在方法中进行访问控制
- abstract
abstract class Department {}
函数
function buildName(firstName: string, lastName?: string, lastName2 = "Smith", ...restOfName: string[]) : number{
*可选参数和默认参数和剩余参数 返回值类型
}
- 重载