2. TS 数据类型

114 阅读2分钟

1. boolean 类型

var flag:boolean = false;
flag = true;
console.log(flag, 'boolean 类型')   true "boolean 类型"

2. 数值类型

let num:number = 123;
num = 13.14
console.log(num, '数值类型')

3. 字符串类型

let str = 'html'
str = 'js'
console.log(str, '字符串类型')

4. 数组类型

由数值组成的数组类型
let numsArr:number[] = [1, 3, 5, 5]
console.log(numsArr, '数值组成的数组类型')
// 第二种写法
let numsArr2:Array<number> = [2, 4, 5, 6]
console.log(numsArr2, '数值组成的数组类型')
由字符串组成的数组类型
let strsArr:string[] = ['html', 'js', 'false']
console.log(strsArr, '由字符串组成的数组类型')

let strsArr2:Array<string> = ['1', '555']
console.log(strsArr2, '由字符串组成的数组类型')

5. 元组类型

let yArr:[string, number, boolean] = ['aa', 44, true]
console.log(yArr, '元组类型')

6. enum 枚举方法

/**
 * 写法如下:
 *  enum 枚举名{
 *      标识符[=整型常数],
 *      标识符[=整型常数],
 *      ....
 *      标识符[=整型常数],
 *  }
 * 
 * 如:payStatus: 0 未支付  1支付  2交易成功
 */
enum payStatus{
    error= 0,
    success = 2,
}
var isPay:payStatus = payStatus.success;
console.log(isPay, 'enum枚举方法')
console.log(payStatus.error, 'enum枚举方法')


// 如果枚举后面没有定义值,则默认取索引值
enum list{a, b , c}
console.log(list.a, '默认取索引值')  // 0
console.log(list.b, '默认取索引值')  // 1
console.log(list.c, '默认取索引值')  // 2


// 如果枚举值其中一个有定义值,他前面的没有定义值,则前面的取索引值,它后的取他定义的值加1
enum isOk{
    a,
    b= 3,
    z,
    f
}
console.log(isOk.a, '取索引值') // 0
console.log(isOk.b, '取定义值') // 3
console.log(isOk.z, '取前面值+1') // 4
console.log(isOk.f, '取前面值+1') // 5

7.any 类型

let anyData:any= []
anyData = 'zz';
console.log(anyData, '任意类型') // zz "任意类型"

8. void 类型

void 表示没有任何类型,一般用于定义方法的时候没有返回值

function box():number {
    console.log('执行方法')
    return 123
}
console.log(box() + 5)


// 定义方法的时候没有返回值
function box():void {
    console.log('执行方法')
}
box()

9.undefined 类型

var azz:number;
var azz1:undefined;
console.log(azz)   // undefined
console.log(azz1)  // undefined

var num1:number | undefined | null;
num1 = 3
console.log(num1, 'undefined 类型')  // 3

10. null 类型

var c:null;
c=null
console.log(c)  // null