TypeScript学习笔记(三)中,有哪些关键点需要注意?
- 内容介绍
- 文章标签
- 相关推荐
本文共计16212个文字,预计阅读时间需要65分钟。
高级类型(上)交叉类型+交叉类型是将多个类型合并为一个类型,使用符号进行合并。实现这样一个函数:将两个对象合并为一个对象,并将返回值类型设为这两个对象类型的交叉类型。
高级类型(上) 交叉类型交叉类型是将多个类型合并为一个类型,使用符号&进行合并。
实现这样一个函数:将两个对象合并为一个对象并将其返回,那么它的返回值类型就可以是这2个对象类型的合并。
const mergeFunc = <T,U>(arg1:T,arg2:U): T & U =>{
let res = {} as T & U // 类型断言
res = Object.assign(arg1,arg2) // 把2个对象合并成一个对象
return res
}
console.log(mergeFunc({a:'a'},{b:'b'}).a); // a
联合类型
联合类型表示一个值可以是几种类型之一。使用符号|分隔每个类型。
实现这样一个函数:接收一个number或string类型的参数,如果是string类型,则直接返回其长度;如果是number类型,则先转为string类型,再返回其长度。其中参数的类型就可以使用联合类型来表示。
本文共计16212个文字,预计阅读时间需要65分钟。
高级类型(上)交叉类型+交叉类型是将多个类型合并为一个类型,使用符号进行合并。实现这样一个函数:将两个对象合并为一个对象,并将返回值类型设为这两个对象类型的交叉类型。
高级类型(上) 交叉类型交叉类型是将多个类型合并为一个类型,使用符号&进行合并。
实现这样一个函数:将两个对象合并为一个对象并将其返回,那么它的返回值类型就可以是这2个对象类型的合并。
const mergeFunc = <T,U>(arg1:T,arg2:U): T & U =>{
let res = {} as T & U // 类型断言
res = Object.assign(arg1,arg2) // 把2个对象合并成一个对象
return res
}
console.log(mergeFunc({a:'a'},{b:'b'}).a); // a
联合类型
联合类型表示一个值可以是几种类型之一。使用符号|分隔每个类型。
实现这样一个函数:接收一个number或string类型的参数,如果是string类型,则直接返回其长度;如果是number类型,则先转为string类型,再返回其长度。其中参数的类型就可以使用联合类型来表示。

