typescript 学习

介绍

TypeScript具有类型系统,且是JavaScript的超集。

基础类型

TypeScript 提供了和 js基本相同的数据类型,还提供了实用的枚举类型供我们使用。

布尔类型
let a: boolean = false;
数字类型
let n: number = 1;
字符串类型
let s: string = 'a';

还可以使用模板字符串:

let s: string =  `a ${ b }`;
数组类型

两种,表示由此类元素组成的数组:

let arr: number[] = [1, 2, 3];

或,使用数组泛型

let arr: Array<number> = [1, 2, 3];
元组类型

元组类型允许表示一个已知元素类型和数量的数组

let t : [string, number];
t = ['a',  1]; // ok
t = [1, 'a']; // error

当访问一个越界的元素,会使用联合类型替代

x[3] = 'world'; // ok,字符串可以赋给 (string | number)类型
枚举类型

枚举类型是对 js 标准数据类型的一个补充,使用枚举类型,可以为数组类型赋予一组友好的名字

enum Color = {Red, Green, Blue};
let c: Color = Color.Green;
// 上面是从 0 开始,为元素编号
// 也可以手动赋值,可以由枚举的值得到它的名字:
enum Color = {Red=1, Green=2, Blue=3}
let c: string = Color[2];// 'Green
任意值

有时候,不希望类型检查或不清楚类型

let notsure: any = 4;
notsure = 'a';
notsure = false;
空值

当一个函数没有返回值时,通常见到其返回类型为空值

function f(): void {
    alert('a');
}
Null 和 Undefind

和 void 类型一样,null 和 undefind 类型本身用途不大

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

默认情况下,null 和 undefined 是所有类型的子类型。
使用
–strictNullChecks 可以限定 null 和 undefined 只能赋值给 void 和各自类型

Never 类型

never 类型表示永不存在的值的类型

// 返回 never 类型的函数必须存在无法达到的终点
function f(msg: string){
    throw new Error(msg)
}

never 类型是任何类型的子类型,也可以赋值给任何类型,但不能被任何类型赋值

类型断言

使用 <>

let str: any = 'a';
let length: number = (<sting>str).length;

使用 as

let str: any = 'a'
let length: number = (str as string).length;

<> 和 as 两种方式是等价的,看个人习惯,如果在 JSX 中使用,只能用 as

Link

https://typescript.bootcss.com/
https://www.tslang.cn/docs/home.html
https://ts.xcatliu.com/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值