Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JS] Losowy element tablicy
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
Dominator
Czemu nie działa?

  1. var messages = new Array();
  2. var messages[1]="Ada";
  3. var messages[2]="Adela";
  4. var messages[3]="Adelajda";
  5. var messages[4]="Adriana";
  6. var messages[5]="Adrianna";
  7. var messages[6]="Agata";
  8. var messages[7]="Agnieszka";
  9. var messages[8]="Agrypina";
  10.  
  11. function getMessage() {
  12. return messages[Math.floor(Math.random() * messages.length)];
  13. }
Szymciosek
Kod
var messages = new Array();
messages[1]="Ada";
messages[2]="Adela";
messages[3]="Adelajda";
messages[4]="Adriana";
messages[5]="Adrianna";
messages[6]="Agata";
messages[7]="Agnieszka";
messages[8]="Agrypina";


console.log(messages[Math.floor(Math.random() * messages.length)]);


Sprawdzałem to sobie w konsoli, dlatego lekko przerobione
PrinceOfPersia
Cytat
Czemu nie działa?

bo deklarujesz kilka razy tę samą zmienną (jedno var powinno być, a nie kilka). Poza tym - indeksy tablic w JS (jak i wielu innych językach) zaczynają się od zera, a nie od jedynki.

Majcon
Kod
var messages = new Array('Ada', 'Adela', 'Adelajda', 'Adrianna', 'Agata', 'Agnieszka', 'Agrypina');
PrinceOfPersia
ano. Albo jeszcze prościej, wywalmy to Array:
Kod
var messages = ['Ada', 'Adela', 'Adelajda', 'Adrianna', 'Agata', 'Agnieszka', 'Agrypina'];
pyro
  1. function getRandomInt(min, max) {
  2. return Math.floor(Math.random() * (max - min + 1)) + min;
  3. }
  4.  
  5. var randomIndex = getRandomInt(0, (messages.length-1));
  6.  
  7. console.log(messages[randomIndex]);
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.