- 课程名称:Vue3 + Typescript 从0到1开发通用基础组件
- 章节名称:
- 第2章:你好Typescript:进入类型的世界
- 2-10:类型推论、联合类型和类型断言
- 第2章:你好Typescript:进入类型的世界
- 讲师姓名:张轩
- 时间:2022-11-03 21:38
课程内容
-
当定义一个变量没有指明类型时,编译器会根据赋值的类型来推断变量类型
-
变量一般情况下只会有一种类型,但有些情况下,要求变量可以是几种限定的类型,除此之外,其它类型则不可以,那么这种新类型叫联合类型union types
-
写法:
let numberOrString: number | string
-
上面所写的变量即可心赋值为字符串,也可以赋值数字
-
如果要调用方法,只能调用两种类型共有的方法,比如toString(),valueOf()
-
function getLength(input: string | number): number { // 类型断言,当程序员觉得可以比编译器更好理解变量类型时 const str = input as string if (str.length) { return str.length } else { const num = input as number return num.toString().length } } // type guard function getLength2(input: string | number): number { if (typeof input === 'string') { // 由于if语句中的条件的作用,input会以string类型执行 return input.length } else { return input.toString().length } }
-
课程收获
今天的内容是都是第一次见到代码,以前只是听说,这么看到真正的写法