webForumDet fria alternativet
Logga in / Bli medlem

Sitter fast

JavaScript

2 svar · 208 visningar · startad av Skarre

Medlem sedan apr. 20012 427 inlägg
Frågan#1

Jag sitter fast i en JavaScript-uppgift och hoppas att någon kan hjälpa mig på traven. Uppgiften består i att skriva ut initialerna i ett namn oavsett hur många namn det innehåller.

Jag börjar med att skapa en variabel med själva namnet:

var namn = "Förnamn Mellannamn Efternamn";

Sedan tänkte jag ta ut alla namn separat och lägga i variabler (om det överhuvudtaget är möjligt) genom att leta efter mellanslag, och det är här jag behöver hjälp. Första namnet klarar jag, men sen är det stopp.

var fornamn = namn.substring(0,namn.indexOf(" "));

Hur tar jag ut nästa namn? indexOf(" ") letar ju bara upp det första mellanslaget.

Kan man lösa detta med en loop eller finns någon färdig strängfunktion för att hantera sådant här?

Medlem sedan juni 20004 308 inlägg
#2

Exempel:

namn="Kalle Pelle Karlsson"; var initialer="";
namndelar=namn.split(' ');
for (i=0;i<namndelar.length;i++){
	initialer += namndelar[i].substring(0,1);
}

namndelar är en array som skapas av att du splittar upp variabeln namn efter mellanslag. Sedan loopas arrayen igenom och lägger initialerna i variabeln initialer

Medlem sedan apr. 20012 427 inlägg
#3

Snyggt! :) Man tackar! Jag hade ingen aning om att det fanns en "split"-metod.

270 ms totalt · 4 externa anrop · v20260731065814-full.14655e19
136 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
135 ms — ändringar (db)