1. 数据类型
string
let name:string = 'test'let hi = `hello world ${name}`
number
let a:number = 6;//还可以表示16进制
Array
let list:number[] = [1,2,3]let list:Array<number>=[1,2,3]
元组
let tuple:[string,number]=["str",1]
枚举
enum Color{Red=1,Green,Blue}let c:Color = Color.Redlet colorName:string = Color[1]
any
void
null和undefined
目前使用来看,null表示没有对象,undefined表示缺少值。null和undefined是所有类型的子类。
never
类型断言
通过类型断言这种方式可以告诉编译器,“相信我,我知道自己在干什么”。
let str:any = "test"let n:number = (<string>str).length//强制转换//as 语法let n:number = (str as string).length//强制转换
2 变量声明
变量解构
let arr:[number,number] =[1,2]let [f,s]=arr// f==1,s==2let arr=[1,2,3,4]let [f,...res]=arr //f==1, res=[2,3,4]//对象解构let obj={a:'test',b:1,c:'test2'}let [f,...r]=obj;//f==test,r=={b:1,c:'test2'}let {a:newName1,b:newName2}=obj;//等价 let newName1=o.a;let newName2=o.b//对象结构指定类型let {a,b}:{a:string,b:number}=obj
展开
let obj={a:'test',b:1,c:'test2'}let t = {...obj,t1:'ss'}
