Maszynopis: rodzaje funkcji o zmiennej liczbie argumentów dla

głosy
17

Możliwe duplikaty:
open-ended argumenty funkcji z maszynopis

Czy istnieje jakiś rodzaj podpisu akceptowalne dla funkcji o zmiennej liczbie argumentów? Przykład:

function sum () {
  var sum = 0;
  for (var i = 0; i < arguments.length; i++) {
    sum += arguments[i];
  }
  return sum;
};

console.log(sum(1, 2, 3, 4, 5));

Daje mi błąd kompilacji:

foo.ts(9,12): Supplied parameters do not match any signature of call target
Utwórz 02/10/2012 o 23:04
źródło użytkownik
W innych językach...                            


1 odpowiedzi

głosy
25

W maszynie można użyć „ ...” do achive powyższy wzór:

function sum (...numbers: number[]) {
  var sum = 0;
  for (var i = 0; i <  numbers.length; i++) {
    sum += numbers[i];
  }
  return sum;
};

To powinno dbać o błędzie.

Odpowiedział 02/10/2012 o 23:28
źródło użytkownik

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