//声明变量类型
let v1:number | string = 1
let v2:string = 'a'
let v3:number = 1
let v4:boolean = true
let v5:null = null
let v6:undefined = undefined
let v7:1|2|3 = 2
//数组
let arr1:number[] = [1,2]
let arr2:Array<string> = ['a']
//断言 确认返回值为number
let result = arr1.find(i=>i>1) as number
console.log(result*5)
//元组
let arr3:[number,string,number?] = [1,'a',2]
let arr4:[number,string,number?] = [1,'a']
//枚举
enum MyEnum {
a,
b,
c
}
// {
// "0": "a",
// "1": "b",
// "2": "c",
// "a": 0,
// "b": 1,
// "c": 2
// }
console.log(MyEnum)
console.log(MyEnum[0],MyEnum.a)
//接口
interface User {
name:string,
age:number
}
let person:User = {
name:'xxx',
age:18
}
//类型
type UserName = number | string
let p1:UserName = '张三'
//函数,返回值为number
function f1 (a:number,b:number):number {
return a+b
}
function f (a:number,b:number):number[] {
return [a,b]
}
//没有返回值
function f2 (a:number,b:number):void {
}
//c可选参数,rest扩展参数
function f3 (a=1,b:number,c?:boolean,...rest:number[]):number {
console.log(a,b,c,rest)
return 100
}
f3(1,2,true,3)
//泛型
function f4<T>(a:T,b:T):T[] {
return [a,b]
}
f4(1,2)
f4('a','b')
f4(true,false)
f4<number>(1,2)
网友评论