菜单
×
   ❮   
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

TypeScript Keyof


keyof 是 TypeScript 中的一个关键字,用于从对象类型中提取键的类型。


keyof 配合显式键

当对具有显式键的对象类型使用 keyof 时,它会创建一个包含这些键的联合类型。

示例

interface Person {
  name: string;
  age: number;
}
// `keyof Person` 在这里会创建一个 "name" 和 "age" 的联合类型,不允许其他字符串
function printPersonProperty(person: Person, property: keyof Person) {
  console.log(`Printing person property ${property}: "${person[property]}"`);
}
let person = {
  name: "Max",
  age: 27
};
printPersonProperty(person, "name"); // 打印 person 属性 name: "Max"
自己动手试一试 »

keyof 配合索引签名

keyof 也可以与索引签名结合使用,以提取索引的类型。

type StringMap = { [key: string]: unknown };
// `keyof StringMap` 在这里解析为 `string`
function createStringPair(property: keyof StringMap, value: string): StringMap {
  return { [property]: value };
}

×

联系销售

如果您想将 W3Schools 服务用于教育机构、团队或企业,请发送电子邮件给我们
sales@w3schools.com

报告错误

如果您想报告错误,或想提出建议,请发送电子邮件给我们
help@w3schools.com

W3Schools 经过优化,旨在方便学习和培训。示例可能经过简化,以提高阅读和学习体验。教程、参考资料和示例会不断审查,以避免错误,但我们无法保证所有内容的完全正确性。使用 W3Schools 即表示您已阅读并接受我们的使用条款Cookie 和隐私政策

版权所有 1999-2024 Refsnes Data。保留所有权利。W3Schools 由 W3.CSS 提供支持