Hi,
ich moechte ein assoziatives Array zufallssortieren (die keys) und aergere mich, dass ich einen Umweg ueber ein indiziertes Array gehen muss. Hat einer von Euch mal was eleganteres gebastelt? Hier mein Versuch:
<html>
<head>
<script language="JavaScript1.2" type="text/javascript">
function randComp() {
return (Math.random() - Math.random());
}
myNumbers = new Array();
myNumbers["lala1"] = 1;
myNumbers["lala2"] = 2;
myNumbers["lala3"] = 3;
myNumbers["lala4"] = 4;
function shuffle() {
var temp1 = new Array();
var temp2 = new Array();
for(i in myNumbers) temp1[temp1.length] = i;
temp1.sort(randComp);
for(var j = 0; j < temp1.length; j++) temp2[temp1[j]] = myNumbers[temp1[j]];
var out = "";
for(i in temp2) out += i + "->" + temp2[i] + " - ";
document.spiel.ausgabe.value = out;
}
</script>
</head>
<body bgcolor="#FFFFFF">
<form name="spiel">
<input name="ausgabe" type="text" value="Zufallsreihenfolge" size="53" maxlength="53">
<input name="button" type="button" value="go" onClick="shuffle()">
</form>
</body>
</html>
Gruesse Joachim