natknąłem javascript puzzle pytając: napisać kawałek jednej linii kodu JavaScript, który skleja wszystkie sznurki przekazywane do funkcji:
rekurencyjnie złączenie javascript funkcje argumenty
function concatenate(/*any number of strings*/) {
var string = /*your one line here*/
return string;
}
Widząc, że argumenty funkcji są reprezentowane jako indeksowany obiekt MAYBE w tablicy, myślałem, że można to zrobić w sposób rekursywny. Jednak moja rekurencyjna implementacja rzuca błąd. - „conc.arguments.shift nie jest funkcją” -
function conc(){
if (conc.arguments.length === 0)
return "";
else
return conc.arguments.shift() + conc(conc.arguments);
}
wydaje się, że conc.arguments nie jest tablicą, ale mogą być dostępne przez indeks numer i ma właściwość length ??? mylące - prosimy o dzielenie się opiniami i innymi rekurencyjnymi wdrożeniami.
Dzięki
Dostaję obiekt oczekiwany błąd na slice.call w IE –