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
相关推荐
默_笙9 分钟前
💫 闭包是个背包:拆解小米前端面试题里的三道"闭包陷阱"
前端·javascript·面试
天若有情67317 分钟前
粒子星空背景单页HTML模板|炫酷动态星空特效网页(纯前端)
前端·html·css动画·网页特效·粒子星空·静态网页模版
工业涂料百问19 分钟前
【趋势前沿】系列(三)工业涂料国产替代的三个台阶:航空、海工、电子的突破路径与认证壁垒
前端
前端snow28 分钟前
ai agent --- agentic RAG
前端
gyratesky41 分钟前
记录一种很新的大屏开发方式
前端·数据可视化
xy34532 小时前
Axure 9.0 中继器核心结构
前端·ui·html·axure·原型·产品设计
老王以为2 小时前
走进 AI Agent 第四篇(上):知识获取管道——RAG 基础
前端·人工智能·全栈
夏天要喝冰可乐2 小时前
一处写作,多平台分发:我给掘金做了一款开源 Chrome 插件
前端·chrome·vibecoding
老男孩游戏时光2 小时前
Vue3 Composition API 最佳实践,别再乱写 setup 了
vue.js