A beírt sor funkciók

szavazat
43

Küzdök, hogy kitaláljuk, ha ez lehetséges, írógéppel, hogy állapítsa meg a statikusan típusos tömb függvények.

Például, meg tudom csinálni ezt:

foo: (data:string) => void = function (data) {};

De ha azt akarom, hogy a foo tömböt függvénynek, amelyek egy sor, és vissza semmit, hogyan csináljam ezt?

foo: (data:string) => void [] = [];

Nem működik, mert azt hiszi, hogy géppel függvényében, hogy vesz egy húr, és vissza egy tömbben érvénytelen, és nem úgy tűnik, mint engem próbál betakar a funkció zárójelben.

Bármilyen ötletet?

Válasz : Köszönet mohamed alább, itt egy példa, hogy működik a géppel Playground:

class whatever {
public foo: { (data: string): void; }[] = [];

    dofoo() {
        for (var i=0; i < this.foo.length; i++) {
             this.foo[i](test);
        }
    }
}

var d = new whatever();

d.foo.push(function(bar){alert(bar)})
d.foo.push(function(bar){alert(bar.length.toString())})

d.dofoo();
A kérdést 04/10/2012 20:41
a forrás felhasználó
Más nyelveken...                            


2 válasz

szavazat
61

Akkor ezt a nyelvet spec szakasz 3.5.5:

foo: { (data: string): void; } []
Válaszolt 04/10/2012 20:55
a forrás felhasználó

szavazat
28

Egyéb (újabb, olvashatóbb) módon, hogy írja egy sor funkciókat zsír nyilak:

let foo: Array<(data: string) => void>;
let bar: ((data: string) => void)[];
Válaszolt 23/04/2017 15:28
a forrás felhasználó

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more