TS基础2-常用类型

1,类型检查的一些 tips

1,某些纯数字,应该定义为 string 还是 number

解决:看叫法,比如电话号码,就应该定义为 string

2,数组类型的2这种写法,都可以。

let nums: nubmer[] = [12,34]
let nums: Array<number> = [12,34]

3,nullundefined 是其他类型的子类型,可以赋值为其他类型。

let str: string = undefined

通过配置更严格的类型检查来限制该问题:

{
	"compilerOptions": {
		"strictNullChecks": true
	}
}

2,其他常用类型

2.1,联合类型

主要说下类型保护:当对某个变量进行类型判断之后(比如typeof xxx),在语句块中便可以确定它的确切类型。

let name: string | number = '123';
if (typeof name === 'string') {
    name.substring(0)
}

2.2,void 类型

只用于约束函数的返回值,表示该函数没有任何返回。

当函数没有返回值值时,函数返回值的默认推断就是 void 类型。

function fun():void {
  console.log(123);
}

2.3,never 类型

用于约束函数的返回值,表示该函数(没有返回值)永远不会执行结束。

下面2个函数的返回值默认会推断为 void,但应该是 never 类型

function throwError(msg: string): never {
  throw new Error(msg);
}

function recur(): never {
  while (true) {
    // ...
  }
}

2.4,字面量类型

用具体的值来进行约束。

// num 之后只能被赋值为 2
let num: 2;

// str 之后只能被赋值为 A 或 B
let str: "A" | "B";

常见应用:

let gender: "男" | "女";

let user: {
    name: string
    age: number
}

2.5,元祖类型

表示一个固定长度的数组,并且每个元素的类型也确定。

let score: [string, number];

2.6,any 类型

any类型可以绕过类型检查。所以 any 类型的数据也可以赋值给任意类型。

let str: any = "xxx";
let num: number = str; // 并不会提示错误。

以上。

  • 5
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
miniprogram-ts-less-quickstart是一个用于快速启动小程序开发的项目模板。它结合了TypeScript和Less两种前端技术,能够提供更好的开发体验和代码质量。 首先,TypeScript是JavaScript的超集,它增加了强类型、接口、泛型等特性,让编码更加健壮和可靠。使用TypeScript可以在开发过程中发现潜在的错误,提高开发效率。此外,TypeScript还支持ES6+的语法,并且提供了丰富的类型定义和IDE的支持,让我们能够更好地开展小程序开发工作。 另外,miniprogram-ts-less-quickstart还使用了Less作为CSS预处理器。Less可以增加CSS的可复用性和可维护性,提供了变量、嵌套规则、混入等特性,使得我们能够更加方便地编写和管理样式。通过使用Less,我们能够更好地组织样式代码,减少重复的工作,并且能够更容易地进行主题切换和样式调整。 miniprogram-ts-less-quickstart提供了一个基础的项目结构和一些常用的配置,使得我们能够快速上手开发。它包含了一些常用的开发工具和库,如webpack、eslint等,能够帮助我们提高开发效率和代码质量。此外,它还提供了一些示例代码和文档,让我们能够更好地理解和使用这个项目模板。 综上所述,miniprogram-ts-less-quickstart是一个非常有价值的项目模板,能够帮助我们快速启动小程序开发,并且提供了更好的开发体验和代码质量保障。它结合了TypeScript和Less两种前端技术,让我们能够更好地开展小程序开发工作。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

下雪天的夏风

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

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

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

打赏作者

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

抵扣说明:

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

余额充值