Välja slumpvisa poster och skriva ut på HTML-sida (Javascript)

Permalänk
Medlem

Välja slumpvisa poster och skriva ut på HTML-sida (Javascript)

Är intresserad att göra en Diceware randomizer i Javascript på en lokal HTML-sida. Bara för att JS/HTML är mest operativsystem-oberoende.

Mer specifikt: Jag har en ordlista (lokal textfil) med 7776 rader, där varje rad innehåller 1 ord. Är väldigt intresserad att skapa ett Javascript på lokal HTML sida som slumpvis väljer ut typ 5 olika radnummer i textfilen, och skriver ut orden (texten) som finns på respektive rad på HTML-sidan.

Kanske blir lättare att lägga in alla 7776 orden i en kolossal array i koden på HTML-sidan, när man tänker på det. Behöver inte ha möjligheten att ändra listan i vilket fall.

Har försökt hitta liknande på nätet, men det finns knappt några. Och det finns dessutom bara med textfiler laddade med märkliga ord, och jag vill använda svenska ord.

Det här ligger lite norr om min JS kunskap så jag undrar över bäst strategi att göra det här på. Undrar om man kanske kan lägga upp det här med en enkel loop som väljer slumpvisa tal? Eller hur skulle ni göra det? Har en känsla av att jag krånglar till det i huvet, att det kan vara väldigt enkelt ... kanske typ:

var ord = ['Bil', 'Glass', 'Varg']; var val = ord[Math.floor(Math.random()*ord.length)]; alert('Scriptet valde:' + val);

Permalänk
Medlem
Skrivet av Dooley:

Är intresserad att göra en Diceware randomizer i Javascript på en lokal HTML-sida. Bara för att JS/HTML är mest operativsystem-oberoende.

Mer specifikt: Jag har en ordlista (lokal textfil) med 7776 rader, där varje rad innehåller 1 ord. Är väldigt intresserad att skapa ett Javascript på lokal HTML sida som slumpvis väljer ut typ 5 olika radnummer i textfilen, och skriver ut orden (texten) som finns på respektive rad på HTML-sidan.

Kanske blir lättare att lägga in alla 7776 orden i en kolossal array i koden på HTML-sidan, när man tänker på det. Behöver inte ha möjligheten att ändra listan i vilket fall.

Har försökt hitta liknande på nätet, men det finns knappt några. Och det finns dessutom bara med textfiler laddade med märkliga ord, och jag vill använda svenska ord.

Det här ligger lite norr om min JS kunskap så jag undrar över bäst strategi att göra det här på. Undrar om man kanske kan lägga upp det här med en enkel loop som väljer slumpvisa tal? Eller hur skulle ni göra det? Har en känsla av att jag krånglar till det i huvet, att det kan vara väldigt enkelt ...

var c = "Bil"; var d = "Glass"; var e = "Varg"; var thing = window['cde'.charAt(Math.floor(Math.random()*3))]; document.write('Scriptet valde: ' + thing);

Den kod du hade från början fungerar väl utmärkt? Den du redigerade till är jag inte riktigt med på

Läs in alla rader till en array, hämta ett random index ur din array med dinArray[Math.floor(Math.random() * dinArray.length)];

Sen kör du den raden så många gånger du vill hämta ett random index.
Vill du endast hämta unika rader så får du lagra det index du hämtat ut och köra om koden ifall ditt index redan har inträffat - tills dess att det är ett nytt index

*edit*
Som du nu ändrat till

Visa signatur

NZXT H510 Flow MSI B450 Tomahawk MAX
AMD Ryzen 5800X3D RX 7900XTX Kingston Fury 64GB
LG C2 42" 4K@120Hz AOC Q27G2U 1440P@144Hz

Permalänk
Medlem
Skrivet av Pamudas:

Den kod du hade från början fungerar väl utmärkt? Den du redigerade till är jag inte riktigt med på

Läs in alla rader till en array, hämta ett random index ur din array med dinArray[Math.floor(Math.random() * dinArray.length)];

Sen kör du den raden så många gånger du vill hämta ett random index.
Vill du endast hämta unika rader så får du lagra det index du hämtat ut och köra om koden ifall ditt index redan har inträffat - tills dess att det är ett nytt index

*edit*
Som du nu ändrat till

Haha, ja ursäkta. Jag trodde jag skulle hinna innan nån läste.

Det gick ju alldeles utmärkt det där. Bortsett från textformatteringen av en nära 8000 rader lång array *pust*
Jag känner mig lite för bekväm för att säkerställa unika rader. Jag menar, den har nära 8000 rader att välja på. Vad är sannolikheten för dublett? Och händer det, så är det bara köra om scriptet. Jag gjorde en funktion som triggas onClick av ett Button element.

Tänk vad man kan krångla till det i skallen, när det ofta är enklare än det 'känns'.
Får tacka så mycket för supporten