首页 > 其他分享 >TypeScript中typeof的简单介绍

TypeScript中typeof的简单介绍

时间:2022-10-05 21:24:15浏览次数:34  
标签:TypeScript console name age let typeof 简单 类型

简单介绍typeof

我们都知道js提供了typeof,用来获取基本数据的类型。
实际上,TS也提供了 typeof 操作符。 可以在 【类型上下文】中进行类型查询。
只能够进行变量或者属性查询。

定义参数类型

let p = {
    name: 'zs',
    age:10
}
function p1(parmas : { name:string, age:number}) { //这里我们声明了参数的类型
    console.log('我叫',name)
    console.log('今年', age)
}
p1(p)
如果我们这里有很多个参数,每个参数都声明类型,这样会含麻烦。
这个时候我们就可以使用 typeof 来解决这个问题了。

typeof 的运用

let p = {
    name: 'zs',
    age:10
}
function p1(parmas: typeof p) {  //它会去解析p。 然后变成 parmas : { name:string, age:number}
   console.log(p.age)
    console.log(p.name)
}
p1(p)

typeof只能用来查询变量或者属性的类型。

let p = {
    age: 10,
    name:'zs'
}

let nianling: typeof p.age
let name: typeof p.name

typeof 的注意点

typeof只能用来查询变量或者属性的类型。
无法查询其他形式的类型。比如说:返回调用的类型。

let p = {
    num1: 10,
    num2:30
}

function add(parmas: typeof p) :number { 
    return p.num1+p.num2
}
// 逗号运算符的左侧未使用,没有任何副作用.这样会报错
let sum:typeof add(4,8) 

标签:TypeScript,console,name,age,let,typeof,简单,类型
From: https://www.cnblogs.com/IwishIcould/p/16756422.html

相关文章

  • 实现一个简单的Database4(译文)
    前文回顾实现一个简单的Database1(译文)实现一个简单的Database2(译文)实现一个简单的Database3(译文)译注:cstsck在github维护了一个简单的、类似SQLite的数据库实现,通过......
  • 通过JDBC进行简单的增删改查(以MySQL为例)
    目录前言:什么是JDBC一、准备工作(一):MySQL安装配置和基础学习二、准备工作(二):下载数据库对应的jar包并导入三、JDBC基本操作(1)定义记录的类(可选)(2)连接的获取(3)insert(4)upda......
  • leetcode 530. Minimum Absolute Difference in BST二叉搜索树的最小绝对差 (简单)
    一、题目大意给你一个二叉搜索树的根节点root,返回树中任意两不同节点值之间的最小差值。差值是一个正数,其数值等于两值之差的绝对值。示例1:输入:root=[4,2,6,1......
  • 简单查询语句
    查询一个字段:select字段名from表名;其中要注意:select和from都是关键字字段名和表名都是标识符强调:对于SQL语句来说,是通用的所有的SQL语句以“;”结尾另外SQL语句......
  • C#建立最简单的web服务,无需IIS
    软件架构师何志丹本程序只是入门级程序,所以不考虑1,多线程。2,安全性。3,不考虑端点下载文件。4,Keep-Alive。5,不考虑head。6,为了简洁,删掉了catch的内容。exe的祖父目......
  • 通信交互 socket套接字 简单通信
    服务端importsockets=socket.socket()s.bind(('0.0.0.0',1234))#主机ip,端口号s.listen()#等待连接c,addr=s.accept()#等待连接print(c)print(addr)客户端import......
  • graylog MessageProcessor 简单说明
    MessageProcessor是在ProcessBufferProcessor使用的,主要进行消息的加工,比如过滤,提取,扩展ProcessBufferProcessor参考处理privatevoidhandleMessage(@Nonnul......
  • 最简单的链表实现
    输入数字并输出的链#include<iostream>#include<stdlib.h>usingnamespacestd;​structNode{intdata;structNode*next;};​intmain(){intnum;cin>......
  • 一款很简单的键盘记录器,只保留了基础功能
    //Crack.cpp:定义DLL应用程序的入口点。#include"pch.h"HINSTANCEhin; //模块句柄:即本模块在内存中的首地址BOOLAPIENTRYDllMain(HMODULEhModule, //入口函......
  • [Typescript] 42. Medium - Remove Index Signature
    Implement RemoveIndexSignature<T> ,excludetheindexsignaturefromobjecttypes.Forexample:typeFoo={[key:string]:any;foo():void;}typeA=......