typeof与keyof

文章目录

  • typeof
  • keyof

专栏目录请点击

typeof

  • 在js中typeof用来获取一个变量的类型 MDN
  • 再ts中typeof一般用来获取一个变量的定义的类型,一般他用在定义变量的后面说明类型,如果是用到非定义变量时,那么就是js中的用法了
const dog = {
    name: "wangcai",
    age: 18
}

let dogType: typeof dog;

我们可以查看一下dogType这个变量的类型typeof与keyof_第1张图片
你会发现这个变量的类型就是我们定义的dog的类型

keyof

  • keyof一般获取某种类型的键,直接返回联合类型
  • keyof后面跟一种类型,不能跟具体的值,也常常与typeof一起使用
const TangSeng = {
    name: "tangseng",
    age: 18
}

let key:keyof typeof TangSeng

我们可以看一下key的值

typeof与keyof_第2张图片
一般我们对于对象进行读取的时候可能会用到keyof

const TangSeng = {
    name: "tangseng",
    age: 18
}

type key = keyof typeof TangSeng

function fn(param:key){
    return TangSeng[param]
}

你可能感兴趣的:(TS,javascript,前端,html5)