| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Neuer User Registriert seit: Oct 2003
Beiträge: 10
|
Hi folks, wollte ein Prototype erstellen, welcher mir ein Array mit Zufallszahlen füllt. x0 = Min Value z.B. 1 x1 = Max Value z.B. 49 num = Zahlenmenge welche ünernommen werden soll z.B. 6 Code: Array.prototype.fillRandomNum = function(x0, x1, num) {
for (var i = x0; i <= x1; i++) {
this.push(i);
}
this.sort(function () {
return (random(3) - 1);
});
this = this.splice(0, (num ? num : this.length));
};
theArray = [];
theArray.fillRandomNum(1, 49, 6); Please help! |
| | |
| | #2 (permalink) |
| muh Registriert seit: Apr 2002 Ort: Freiburg / Stuttgart
Beiträge: 4.338
|
Willkommen im Forum! Du verwendest Array.splice falsch. Array.slice wäre die Funktion die du so einsetzen könntest, wie du es gerade vorhast, allerdings halte ich es für eine schlechte Idee, this zu überschreiben. Da Array.splice ein bestehendes Array verändert könntest du die hinteren (nicht benötigten) Elemente mit this.splice(num, this.length) abschneiden.
__________________ »Carpe diem«, sagte der Graf. (Terry Pratchett: Ruhig Blut!) |
| | |
| | #3 (permalink) |
| Techniker Registriert seit: Sep 2003 Ort: 64807
Beiträge: 16.324
|
x0 und x1 sind recht anonyme bezeichnungen. eine sinnvolle namensgebung verringert die fehlermöglichkeiten und erspahrt unnötige beschreibungen ;-) wobei eine beschreibungen kein fehler ist. Code: // gibt anzahl zufallszahlen zurück, im zahlenwert von..bis
Array.prototype.fillRandomNum = function(von, bis, anzahl) {
while (von<=bis) {
this.push(von++);
}
this.sort(function () {
return (random(3)-1);
});
if (anzahl && anzahl <this.length) {
this.length = anzahl;
}
};
//
theArray = [];
theArray.fillRandomNum(5, 49, 6);
trace(theArray.join(','));
__________________ die ultimative antwort auf alle programmierfragen: der debugger mfg h.g.seib www.SeibsProgrammLaden.de Geändert von hgseib (07-03-2006 um 18:41 Uhr) |
| | |
| | #4 (permalink) |
| Neuer User Registriert seit: Oct 2003
Beiträge: 10
|
Danke Jungs! @Janoscharlipp: okay, da hätte ich eigentlich drauf kommen können Danke für den Hinweis!@hgseib: die namensgebung hab ich auch geändert - muss aber leider immer alles in englisch halten ![]() Code: Array.prototype.fillRandomNum = function(from, to, num) {
for (var i = from; i <= to; i++) {
this.push(i);
}
this.sort(function () {
return (random(3) - 1);
});
this.splice((num ? num : this.length), this.length);
}; |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |