Typescript 多个泛型参数详细解读

多个泛型参数的函数 : 函数中有多个泛型的参数。

示例:

TypeScript 复制代码
(() => {

  function getMsg<K, V>(value1: K, value2: V): [K, V] {
    return [value1, value2]
  }

  const arr1 = getMsg<string,number>('jack',100.2345)
  console.log(arr1[0].split(''))
  console.log(arr1[1].toFixed(1))  //调用 toFixed(1) 方法将数字四舍五入保留一位小数
})()

以上代码详细解读:

  • function getMsg<K, V>(value1: K, value2: V): [K, V]
    • getMsg 是函数名。
    • <K, V>是类型参数列表,这里定义了两个类型变量 KV。泛型允许函数在定义时不指定具体的类型,而是在调用时再确定。
    • (value1: K, value2: V) 表示函数接受两个参数 value1value2,**value1的类型是 Kvalue2**的类型是 V
    • **: [K, V]**是函数的返回值类型,表示函数返回一个包含两个元素的元组,第一个元素的类型是 K,第二个元素的类型是 V
  • return [value1, value2]:函数体部分,通过返回一个包含 value1 和 **value2**的数组来实现返回元组的功能。
  • const arr1 = getMsg<string, number>('jack', 100.2345) :调用 getMsg 函数,明确指定类型参数 KstringVnumber。传入的参数 'jack' 是字符串类型,100.2345 是数字类型。函数返回一个元组 ['jack', 100.2345],并将其赋值给常量 arr1
  • console.log(arr1[0].split('')):访问 arr1 的第一个元素(即字符串 'jack'),调用 split('') 方法将字符串拆分成字符数组,然后将结果打印到控制台。这里会输出 ["j", "a", "c", "k"]
  • console.log(arr1[1].toFixed(1))访问 arr1 的第二个元素(即数字 100.2345),调用toFixed(1)方法将数字四舍五入保留一位小数,然后将结果打印到控制台。这里会输出 100.2
相关推荐
巴拉巴拉~~21 小时前
Flutter 通用列表刷新加载组件 CommonRefreshList:下拉刷新 + 上拉加载 + 状态适配
前端·javascript·flutter
Asus.Blogs21 小时前
golang格式化打印json
javascript·golang·json
梨子同志21 小时前
Express.js 基础
前端
沧澜sincerely21 小时前
WebSocket 实时聊天功能
网络·websocket·vue·springboot
梨子同志1 天前
Node.js HTTP 服务器开发
前端
码途潇潇1 天前
数据大屏常用布局-等比缩放布局(Scale Laylout)-使用 CSS Transform Scale 实现等比缩放
前端·css
parade岁月1 天前
JavaScript Date 的那些事
javascript
犬大犬小1 天前
从头说下DOM XSS
前端·javascript·xss
绿鸳1 天前
Socket.IO实时通信
前端
Cache技术分享1 天前
273. Java Stream API - Stream 中的中间操作:Mapping 操作详解
前端·后端