美文网首页
Typescript(三)类型注解和类型推断

Typescript(三)类型注解和类型推断

作者: camellias__ | 来源:发表于2021-05-13 08:59 被阅读0次

1:type annotation 类型注解

就是在声明变量的时候,显式的声明他的类型

let count: number;
count = 123;

这段代码就是类型注解,意思是显示的告诉代码,我们的count变量就是一个数字类型,这就叫做类型注解。是不是一下就明白了,其实程序这东西就这么简单,真正复杂的是人。

2:type inferrence 类型推断

let countInference = 123;

这时候我并没有显示的告诉你变量countInference是一个数字类型,但是如果你把鼠标放到变量上时,你会发现 TypeScript 自动把变量注释为了number(数字)类型,也就是说它是有某种推断能力的,通过你的代码 TS 会自动的去尝试分析变量的类型。

3:工作使用问题(潜规则)

如果 TS 能够自动分析变量类型, 我们就什么也不需要做了

如果 TS 无法分析变量类型的话, 我们就需要使用类型注解

(1):先来看一个不用写类型注解的例子:

const one = 1;
const two = 2;
const three = one + two;

(2):再来看一个用写类型注解的例子:

function getTotal(one, two) {
  return one + two;
}
 
const total = getTotal(1, 2);

这种形式,就需要用到类型注释了,因为这里的one和two会显示为any类型。这时候如果你传字符串,你的业务逻辑就是错误的,所以你必须加一个类型注解,把上面的代码写成下面的样子。

function getTotal(one: number, two: number) {
  return one + two;
}
 
const total = getTotal(1, 2);

这里有的一个问题是,为什么total这个变量不需要加类型注解,因为当one和two两个变量加上注解后,TypeScript 就可以自动通过类型推断,分析出变量的类型。

当然 TypeScript 也可以推断出对象中属性的类型,比如现在写一个小姐姐的对象,然后里边有两个属性。

const XiaoJieJie = {
  name: "刘英",
  age: 18,
};

写完后你把鼠标放在XiaoJieJie对象上面,就会提示出他里边的属性,这表明 TypeScript 也分析出了对象的属性的类型。

在写 TypeScript 代码的一个重要宗旨就是每个变量,每个对象的属性类型都应该是固定的,如果你推断就让它推断,推断不出来的时候你要进行注释。

有好的建议,请在下方输入你的评论。

欢迎访问个人博客
https://guanchao.site

相关文章

  • Typescript(三)类型注解和类型推断

    1:type annotation 类型注解 就是在声明变量的时候,显式的声明他的类型 这段代码就是类型注解,意思...

  • Typescript类型注解/类型推断

      TypeScript是微软开发的一个开源的编程语言,通过在JavaScript的基础上添加静态类型定义构建而成...

  • TypeScript中的类型注解和类型推断

    在TypeScript中有两个基本概念: 类型注解和类型推断,这两个概念在我们编写TypeScript代码时会一直...

  • typescript学习笔记-类型注解和类型推断

    只要是变量、或者对象属性,都应该有一个明确的类型,自动提示该变量有的属性及方法 类型注解(人工的告诉ts,变量或者...

  • 类型注解和类型推断

    类型注解(type annotation) 类型注解就是在声明变量的时候 先告诉TS 当前声明的变量是什么类型 例...

  • 类型注解和类型推断

    类型注解 type annotation, 就是我们来告诉TS变量是什么类型 type inference 类型推...

  • TypeScript学习——类型推断、联合类型

    类型推断 如果没有明确的指定类型,那么TypeScript会依照类型推论的规则推断出一个类型 什么是类型推断 上面...

  • 类型推断

    类型推断 介绍 这节介绍TypeScript里的类型推断。即,类型是在哪里如何被推断的。 官方文档[https:/...

  • Typescript学习概要

    大致印象 TypeScript 增加了静态类型、类、模块、接口和类型注解. TypeScript 可用于开发大型的...

  • TypeScript 高级(一)

    类型推断 基于赋值表达式推断类型的能力称之为“类型推断”。 在 TypeScript 中,具有初始化值的变量、有默...

网友评论

      本文标题:Typescript(三)类型注解和类型推断

      本文链接:https://www.haomeiwen.com/subject/jsdtjltx.html