我能告诉Typescript两个方法';s的输入参数是否为同一类型?

我能告诉Typescript两个方法';s的输入参数是否为同一类型?,typescript,Typescript,在以下代码中: foo(first: string, second: string) { // .. } 我必须写两次字符串吗,或者我可以告诉Typescript; “嘿,这两个参数的类型相同。”是的,您必须将每个参数的类型声明为第一个和第二个参数没有任何共同之处。必须显式声明它们的类型 是的,你必须写stringtwice我希望不是这样:)谢谢你的回答。不过我想说的是,他们确实有一些共同点——他们的类型@豪根:是吗?代码应该写得清晰。如果您想建议对语言进行更改,您可以这样做,但要比保存几

在以下代码中:

foo(first: string, second: string) {
  // ..
}
我必须写两次字符串吗,或者我可以告诉Typescript;
“嘿,这两个参数的类型相同。”

是的,您必须将每个参数的类型声明为
第一个
第二个
参数没有任何共同之处。必须显式声明它们的类型

是的,你必须写
string
twice我希望不是这样:)谢谢你的回答。不过我想说的是,他们确实有一些共同点——他们的类型@豪根:是吗?代码应该写得清晰。如果您想建议对语言进行更改,您可以这样做,但要比保存几次击键更好。你知道它们是同一类型的,编译器又笨又笨。你必须告诉它它不知道的东西。@Amy如果你想象更多的参数,并且在几年的时间里多次编写相同的类型定义,我们不再谈论“几次击键”。但是,我想这就是对象的用途——封装所有这些参数,这样我就不必为每个需要它们的方法编写每个类型?@haugan在某些情况下,将数组、对象或对象数组传递给函数是有意义的。一个常见的经验法则是一个函数最多应该有3个参数。虽然编写类型定义可能看起来很乏味,但它通过捕获潜在的错误(好吧,只有在编译时而不是运行时使用typescript)来获得回报,如果您使用适当的IDE,例如webstorm,自动完成将成为您的朋友。@k0pernikus哦,是的,这很有意义-干杯!顺便说一句,Webstorm真的很棒。我试着用VS代码写了一段时间,但Webstorm的自动完成已经遥遥领先了数英里(至少在Angular/Typescript的世界里是如此)!