2016-05-15 9 views
0

Ich habe die folgende Swap-Funktion gemacht:einfache Swap-Programm kein Javascript arbeiten

function swap(a,b) 
{ 
    var c=b; 
    b=a; 
    a=c; 
} 

Es soll zwei Nummern tauschen. Ich habe den follwing Code:

var x=5; 
var y=10; 
swap(x,y); 

Das Problem, das ist, wenn ich die Ausgabe vaues diese Variablen nach Swap noch 5 für x und 10 y für I erhalten. Irgendwelche Ideen?

+0

Die ** Werte ** von 'x' und' y' werden in 'swap' übergeben, nicht die Variablen selbst (oder ein Verweis auf sie). –

Antwort

0

Da die Parameter als Wert übergeben werden, können Sie nicht eine Funktion schreiben, die die folgende ersetzt:

var a, b; 
var temp = a; 
a = b; 
b = temp; 

Sie können auch einen Einzeiler verwenden:

b = [a, a = b][0];