首页 > 其他分享 >TypeScript中 Parameters[0]代表什么意思?

TypeScript中 Parameters[0]代表什么意思?

时间:2024-02-21 14:45:20浏览次数:31  
标签:TypeScript string Parameters name 意思 类型 Table 构造函数

在TypeScript中,Parameters<T>是一个类型操作符,它会提取函数类型T的参数类型作为一个元组(tuple)类型。这里的 typeof Table 指的是获取名为 Table 的构造函数或函数类型的类型。

如果 Table 是一个类或函数,那么 Parameters<typeof Table>[0] 代表了调用 Table 构造函数时第一个参数的类型。

例如:

class Table {
  constructor(public name: string, public columns: Column[]) {}
}

// 现在我们使用 Parameters<typeof Table>
type FirstConstructorParameter = Parameters<typeof Table>[0];

// 这里 FirstConstructorParameter 类型将会是 'string',因为 Table 构造函数的第一个参数是 'name: string'

如果 Table 是个函数而不是类:

function Table(name: string, size: number) {}

type FirstFunctionParameter = Parameters<typeof Table>[0];

// 这里 FirstFunctionParameter 类型将会是 'string',因为 Table 函数的第一个参数是 'name: string'

总之,在这个上下文中,Parameters<typeof Table>[0] 获取的是 Table 构造函数或函数接受的第一个参数的类型。

标签:TypeScript,string,Parameters,name,意思,类型,Table,构造函数
From: https://www.cnblogs.com/longmo666/p/18025170

相关文章

  • type ColumnTypes = Exclude<EditableTableProps["columns"], undefined>; 这是什么意
    在TypeScript中,Exclude<T,U>是一个内置的类型操作符,它的作用是从联合类型T中排除那些与类型U相匹配的类型。这里的EditableTableProps["columns"]表示从EditableTableProps这个接口或类型中提取columns属性的类型。假设EditableTableProps定义如下:interfaceEdit......
  • typescript修改target导致模块找不到
    编译ts代码时,发现一个包只支持es6及更高的版本,无奈修改编译选项target,从es5修改为es6,发现原来导入包的地方报错,提示notfound。tsconfig.json{"files":["src/main.ts"],"compilerOptions":{"noImplicitAny":true,"target":......
  • VSCOde+Nodejs+Typescript前端开发环境
    1.安装Node.js下载地址:https://nodejs.org/enlts版本:长久稳定版本安装:默认安装就可以了验证:node2.VSCode下载地址:https://code.visualstudio.com/Download安装:默认安装语言切换:安装中文插件,重启 2.1修改终端cmd模式:1.点击设置图标,选择CommandPalette 2.输入:Ter......
  • Debug: tf distribute strategy parameter server: stuck at "INFO:tensorflow:Parame
    [ERROR:stuckat"INFO:tensorflow:ParameterServerStrategyV2isnowconnectingtoclusterwithcluster_spec:ClusterSpec({'ps':['dist-strat-example-ps-0:5000'],'worker':['dist-strat-example-worker-0:5000',&#......
  • link标签中的rel="home"表示什么意思?
    rel属性用于指定链接的关系。例如:<linkrel="home"title="home"href="https://emuchong.com/"/>用以表示当前网页的主页是https://emuchong.com/这个地址。这样做的好处除了提供语义的基本描述,Opera会自动识别出文档<head>段中<link>的rel-home属性。Opera浏览器会提供一个......
  • TypeScript 设计模式之发布订阅者模式
    订阅发布模式(Publish-SubscribePattern)是一种行之有效的解耦框架与业务逻辑的方式,也是一种常见的观察者设计模式,它被广泛应用于事件驱动架构中。在这个模式中,发布者(或者说是主题)并不直接发送消息给订阅者,而是通过调度中心(或者叫消息代理)来传递消息。发布者(或者说是主题)并不知道订......
  • [职场] 待办事项是什么意思
    在我们的日常生活和工作中,待办事项几乎无处不在。有效地管理这些待办事项对于提高我们的工作效率和生活品质具有重要意义。本文将为您介绍一些有关待办事项的常见类别以及如何高效地处理这些事项。一、待办事项的定义待办事项是指在一定时间内需要完成的任务或者事项,通常包括各种工......
  • 命令式句柄(imperative handle)是什么意思?
    命令式句柄(imperativehandle)是什么意思?在计算机科学中,特别是在图形用户界面(GUI)和某些编程语言的上下文中,“命令式句柄”通常指的是对某个对象或资源的一种间接引用。它是一个特殊的标识符,用于操作对象而不直接访问对象本身。例如,在WindowsAPI编程中,句柄(Handle)是一种轻量级的......
  • TS-TypeScript学习_1
    1、推断类型constnameInfo:string='Helloworld'console.log('nameInfo',nameInfo)2、定义类型interfacenameType{name:string;age:number;}constpeopleInfo:nameType={name:'libai',age:18}console.log('......
  • 有意思的小游戏
    猜数字游戏一界面的生成二选择界面对应数字,应该有对应的结果三生成随机数补充rand头文件选用rand函数,但是吧,有着一些问题如上图所示,两次结果毫无变化,不行用srand()srand()生成的随机数与括号里面的数有关,现在就是我们要生成一个随机数,但是需要一个随机数。有点被恶心到了可以应用时间戳......