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
相关推荐
间彧1 天前
Tailwind CSS详解
前端
间彧1 天前
Headless UI详解
前端
Coder-coco1 天前
在线商城系统|基于springboot vue在线商城系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端·宠物
han_1 天前
Vue.js 为什么要推出 Vapor Mode?
前端·javascript·vue.js
oden1 天前
AI重构10000行老代码:2周完成1个月工作量的真实复盘
前端·aigc·ai编程
小满zs1 天前
Next.js第十二章(RSC/服务端组件/客户端组件)
前端
亿元程序员1 天前
明明直接用就可以了,非要在Creator里面写???
前端
wadesir1 天前
Nginx负载均衡代理协议详解(从零开始搭建高可用Web服务)
前端·nginx·负载均衡
秋氘渔1 天前
Vue 3 组合式写法:侦听器 watch 和 watchEffect 的区别及使用技巧
前端·javascript·vue.js·watch·watcheffect
光头程序员1 天前
vue学习笔记
vue.js·笔记·学习