考慮到DRY原則,您將如何處理幾乎相同的方法(使用不同的簽名),這些方法適用於IEnumerable。即一個簽名與特定的類型參數一起工作。我的問題擴展到私人方法的調用以及它們的多重簽名。 我不想有兩個方法具有相同的邏輯 - 如果有什麼改變,那麼我必須改變這兩套邏輯。的私有方法,例如主叫,我怎樣才能使私有方法接受任一類型的IEnumerable public class Person
{
這裏是代碼: interface Foo
{
c : string
}
function foo()
{
var c = this.c
return c
}
foo.call({ c : "quux" })
Visual Studio中說,this : any所以this.c自動完成不起作用。如何添加一個簽名以告知this Implemented
我試過這個,但它不起作用。 Foo只是對什麼起作用的測試。 Bar是真正的嘗試,它應該接收任何新類型,但是Object的子類不適用於此目的。 class A {
}
class B {
public Foo(newable: typeof A):void {
}
public Bar(newable: typeof Object):void {
}