TypeScript基本类型和引用类型实例

TypeScript基本类型和引用类型实例

基本类型实例

TypeScript分文基本数据类型和引用数据类型

TypeScript基本类型有:any 类型、number 类型 、boolean 类型 、 数组类型、元组类型、enum 枚举类型、void 类型、null 类型、 undefine 类型、 never 类型

基本数据类型

// any类型:允许被赋值为任何类型
let anyArr:Array<any> = [999,'2222',true,undefined]
console.log(anyArr) // [ 999, '2222', true, undefined ]

// number类型
let numberArr:Array<number> = [111,222,333] 
console.log(numberArr) // [ 111, 222, 333 ]

// boolean类型
let booleanArr:Array<boolean> = [true,false,true,true]
console.log(booleanArr) // [true,false,true,true]

// 数组类型
let arr:Array<string> = ['fffs','ttt','pppp']
console.log(arr) // ['fffs','ttt','pppp']

//元组类型: 合并不同类型的对象
let x:[boolean,string,number,any] = [false,'zs',21, null]
console.log(x) // [false,'zs',21, null]

//enum 枚举类型: 使用枚举我们可以定义一些带名字的常量。 使用枚举可以清晰地表达意图或创建一组有区别的用例。 TypeScript支持数字的和基于字符串的枚举。
//数字枚举,Up初始化为5,其余的成员从5开始自动增长,不定义则默认为0
enum Direction {
    // Up,
    Up = 5,
    Down,
    Left,
    Right
}
console.log(Direction.Up,Direction.Left,Direction.Right) // 5 7 8

//在一个字符串枚举里,每个成员都必须用字符串字面量,或另外一个字符串枚举成员进行初始化。
enum tyNum {
    Up = 'UP',
        Down = 'Down',
        Left = 'Left',
        // Right , // 报错
        Right = 'Right',
}
console.log(tyNum.Up,tyNum.Left,tyNum.Right) // UP Left Right

// void类型:空类型,方法没有返回值
function lianxi(): void {
    console.log('找食物')
    // return 'ffff' //报错
}
lianxi() // 找食物

//null, undefined
let s:null = null
let d:undefined = undefined
console.log(s,d) //null undefined


//never类型: 一个从来不会有返回值的函数,一个必须抛出错误的函数
//let foo: never = 123; Error: number 类型不能赋值给 never 类型
function bar():never {
    throw new Error('Throw my hands in the air like I just dont care')
}
let foo:never = bar()
console.log(foo) // error Throw my hands in the air like I just dont care

引用数据类型

// 引用类型
let zhangsan = {
	name: 'zhangsan',
	age: 21,
	website: 'zhangsan.com',
	prossWork: function() {
		console.log('zhangsan正在学习')
	}
}
console.log(zhangsan.name)
zhangsan.prossWork()
/*
* 给数组赋值
*/
// 字面量赋值法
// 定义一个空数组,数组容量为0
let arr1:number[] = []
// 直接给数组赋值
let arr2:number[] = [1,2,3,4,5,6]
//定义数组的同时给数组赋值
let arr3:string[] = ['zhangsan','张三','wangwu']
// let arr3:Array<string> = ['zhangsan','张三','wangwu']
let arr4:Array<boolean> = [true,false,true]
console.log(arr1,arr2,arr3,arr4)
// 值错误类型必须相同
let arr5:number[] = [1,2,true,'ttt']
console.log(arr5)

// 构造函数赋值法

/* let arr1:number[] = new Array()
// 下面arr2四种对应方式等同
// let arr2:number[] = new Array(1,2,3,4,5)
// let arr2:Array<number> = new Array(1,2,3,4,5)
// let arr2:number[] = [1,2,3,4,5]
let arr2:Array<number> = [1,2,3,4,5]
let arr3:Array<string> = new Array('wu','zs','ls')
let arr4:Array<boolean> = new Array(true,false,false)
console.log(arr1, arr2, arr3, arr4); */
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

秋叶原的琴音

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值