typescript 中 keyof 如何使用?

如何给Object.keys一个正确的类型

以下给出一段错误的代码

const obj:{a:any, b:any, c:any} = {
    a: null,
    b: null,
    c: null
  };
const keys:[keyof typeof obj] = Object.keys(obj);
阅读 2.7k
2 个回答
const obj = {
  a: null,
  b: null,
  c: null,
};

// Object.keys 返回 string[],需要断言成指定类型
const keys = Object.keys(obj) as Array<keyof typeof obj>;
interface Obj {
    a:any;
    b:any;
    c:any;
}
const obj:Obj = {
    a: null,
    b: null,
    c: null
  };
const keys:[keyof Obj] = Object.keys(obj);
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题