Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/366.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 类型检查。。。使用Typescript的对象的rest字段_Javascript_Node.js_Typescript - Fatal编程技术网

Javascript 类型检查。。。使用Typescript的对象的rest字段

Javascript 类型检查。。。使用Typescript的对象的rest字段,javascript,node.js,typescript,Javascript,Node.js,Typescript,我想用typescript编写一个接口或类型,以强制执行已知字段的类型,以及一些动态字段的类型 例如: const person = { children: [person1, person2], name: "X", dynamicField1: person3, dynamicField2: person4, dynamicField3: person5 } // Something that would look like this i

我想用typescript编写一个接口或类型,以强制执行已知字段的类型,以及一些动态字段的类型

例如:

const person = {
   children: [person1, person2],
   name: "X",
   dynamicField1: person3,
   dynamicField2: person4,
   dynamicField3: person5 
}

// Something that would look like this
interface Person {
  name: string;
  children: Person[];
  ...rest: Person;
}
有没有可能用打字机来写呢

有没有可能用打字机来写呢

是的,您可以让您的
Person
界面扩展一条记录,该记录允许以下任何键/值:

interface Person extends Record<any, any> {
    name: string;
    children: Person[];
}
接口人扩展记录{
名称:字符串;
儿童:人[];
}