TypeScript笔记
TypeScript的最大特点:
1)、提供了强数据类型:
1)、提供了强数据类型:
变量定义:声明类型 let name:string = "你好, ts"; let num:number = 120; let isOk:boolean = true;
let arr:number[] = [1,2,3,5]; let arr:string[] = ['1', '2']; //数组 let arr:any[] = ['1', 2, undefined, true]; let arr:Array<number> = [1,2,3,5]; let arr:Array<string> = ['1', '2']; let arr:[string, number, boolean] = ['1', 2, true]; //元组类型
let name:string|number; //联合类型
let arr:number[]|string[]; //联合类型
函数定义:参数:声明类型,返回值:声明类型 function (name:string, age?:number):string{ return name=="jack"? "Yes":"No"; }
类型别名 type:
type People = { name: string, age: number, sex: string }; //定义了一个类型别名
let tom:People[] = [ { name: 'Tom', age: 23, sex: 'men' }, { name: 'Jack', age: 19, sex: 'women' } ]; // 使用类型别名
2)、新增:枚举、元组、接口、命名空间、
TypeScript 类型:
number:数字,包括整数、小数
string:字符串
boolean:布尔
数组:
元组:
enum:枚举,eg:enum Color {Red, Green, Blue};let c: Color = Color.Green;
void:
any:任意类型
数组:
2种定义方式:
let arr: number[] = [1, 2, 3]; //语法一:let 变量名:类型[ ];
let arr: Array<number> = [1, 2, 3]; //语法二,使用数组泛型:let 变量名:Array<类型>;
let arr: any[] = [1, "a", 3.2]; //any数组元素类型可以不同
let arr:Array<string | number>; //联合类型
元组:数组合并了相同类型的对象,而元组(Tuple)合并了不同类型的对象
定义:
var tuple = [ 1, "aa", 3.1 ]; //包含不同类型,随意
let tuple:[ string, number, any ]= [ 'aa', 22, {key: "value" } ]; //明确元组类型,语法:let 变量名:[类型1,类型2,类型3]
命名空间:解决了命名冲突
定义:
namespace 名称{ //代码 }
使用:
/// <reference path = "文件.ts" /> // 引入命名空间,要在开头使用///来标注