ich davon aus wird sein, dass Sie den Unterschied zwischen dem Aufruf von Funktionen zu stellen bedeutet, die wie erscheinen: -
- Funktion (x, y)
- Funktion (x) (y)
Dies geschieht mit der Verwendung von Closures, die ein Konzept ist, in dem eine innere Funktion die Umgebung tragen kann, in der es erstellt wurde.
var sum = function (x){
return function(y) {
return x+y;
};
};
var addWith5 = sum(5);
/*
This will return a function and not a value
addWith5 = function(y){return 5+y;};
*/
console.log(addWith5(5)); // this will return 11
/*
You can also use add function directly
*/
console.log(sum(5)(6)); // this will return 11
/*
The function returned by sum(5), gets called with the parameter (6)
*/
//Try using this, to make it more clear
function a(x){
return x;
}(5);
// returns 5
EDIT entfernt "Verschlüsse ist ein JS-Konzept."
man eine Funktion ist, und das andere gibt: Uncaught Syntaxerror: unerwartetes Token ( –
__Uncaught Syntaxerror: Unerwarteter token__ Unterschied: Der Zweite wird einen Fehler erzeugen, während erste wird ausführen, wie erwartet :) – Rayon
Was Sie versuchen zu tun, [Funktion Currying] (http://stackoverflow.com/questions/36314/what-is-currying) – MohamedSanaulla