盘点TypeScript中的数据类型,快学起来吧~

TypeScript与JavaScript的区别

JavaScript是一种简单的浏览器脚本语言,具有函数优先特性的轻量级、解释型或者说即时编译型的编程语言。也被用到了许多非浏览器环境,如:Node.js等。JavaScript 的动态特性,使它存在许多怪异之处。

比如:JavaScript允许访问不存在的属性:
const obj = { width: 10, height: 15 };
//area结果NAN
const area = obj.width * obj.hei;

而TypeScript是带类型声明的,可以在编译的时候检测出类型错误
 

const obj = { width: 10, height: 15 }
//会类型编译报错
// Property 'hei' does not exist on type '{ width: number; height: number; }'
const area = obj.width * obj.hei

TypeScript扩展了JavaScript的语法,新增了类型/接口的概念,TypeScript同时支持模块,对大型库的重构更加快捷。

TypeScript中的数据类型

基础数据类型

let isDone: boolean = false
let decimal: number = 6.0    
let color: string = ‘blue’

数组类型

有两种写法:1.元素类型后加[ ]  2.使用数组泛型,Array<元素类型>

let list1: number[] = [1, 2, 3]
let list2: Array<string> = ["a", "b"]

元组tuple

有固定的长度和类型,各元素的类型不必相同

let x: [string, number] = ["hello", 10] 

枚举enum

enum Color { Red, Green = 2 }
let c: Color = Color.Red // 0

任意类型any,允许被赋值任意类型

 let num:any = 123;
 num = 'str';
 num = true;

特殊类型null、undefined

let u: undefined = undefined
let n: null = null

void类型

标识方法返回值类型,表示该方法没有返回值

function test():void{
   alert('test void')
}

never类型

是null和undefined的子类型,可以赋值给任意值,表示不会出现的值
let test:never;
test = 123; // 错误
test = (() => { // 正确的写法
    throw new Error(' ');
})()

对象类型

let bag:object;
bag = {color: 'Red', size: 25}
这篇先写到这里,下篇再写TypeScript中高级类型啦
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值