Bővebben a stringekről¶
Stringek megadása¶
A stringeket leggyakrabban aposztrófok ('...') vagy idézőjelek ("...") között szoktuk megadni. A két megadási mód között lényegi különbség nincs.
Több soros szövegeket backtick karakterek (AltGr + 7) között adhatunk meg.
1 2 3 4 | |
Stringek összefűzése¶
A stringek összefűzése a + (plusz) operátorral történik.
1 2 | |
Kimenet
JavaScript
Stringek hossza¶
JavaScriptben egy string hosszát a length property-vel tudjuk lekérdezni.
1 2 | |
Kimenet
10
Karakterek indexelése¶
A stringek karaktereit JavaScriptben is a más nyelvekből ismerős szögletes zárójel operátorral indexelhetjük: szoveg[index]. A karakterek indexelése itt is 0-tól kezdődik.
1 2 3 4 5 | |
Kimenet
A 0. indexű karakter: t A 4. indexű karakter: y Az utolsó karakter: i
Fontos megjegyezni, hogy a Pythonban tanult negatív indexelés, illetve intervallumos indexelés JavaScriptben nem működik! Amennyiben alul- vagy túlindexeljük a stringet, undefined értéket kapunk.
1 2 3 4 | |
Kimenet
undefined undefined
Immutable adattípus¶
A string adattípus JavaScriptben is immutable, tehát a szövegek kezdeti értéke nem változtatható meg.
1 2 3 4 | |
Kimenet
kecske
Stringkezelő függvények¶
JavaScriptben rengeteg beépített stringkezelő függvényt használhatunk. Tekintsük át ezek közül a kurzus szempontjából a legfontosabbakat!
s.toLowerCase(): csupa kisbetűssé alakítja azsstringets.toUpperCase(): csupa nagybetűssé alakítja azsstringets.startsWith(v): igazat ad vissza, ha azsstring avértékkel kezdődiks.endsWith(v): igazat ad vissza, ha azsstring avértékre végződiks.substr(start, length): visszaadja azsstringből egy részstringet, astartindexű karakterétől kezdve,lengthkarakteren keresztüls.indexOf(text): visszaadja atextszöveg legelső előfordulásának a kezdőindexét azsstringen belül (-1-et ad vissza, ha a keresett szöveg nem szerepel azsstringben)s.replace(old, new): lecseréli azsstringben a legelsőoldrészstringet anewszövegres.trim(): eltávolítja a helyközöket azsstring elejéről és végérőls.split(delim): feldarabolja azsstringetdelimkarakterek mentén (egy tömböt ad vissza)- ...
Példa: Stringkezelő függvények használata
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | |
Kimenet
a citromos fagyi a legjobb fagyi A CITROMOS FAGYI A LEGJOBB FAGYI true A citrom A citromos süti a legjobb fagyi Szerepel a szövegben fagyi! [ 'A', 'citromos', 'fagyi', 'a', 'legjobb', 'fagyi' ]
Kérdés
A replace() a kérdéses részstringnek csak a legelső előfordulását cseréli le a szövegben. Hogyan lehet elérni, hogy a fagyi szöveg összes előfordulását lecseréljük a süti szövegre?
Válasz
1 2 3 4 5 6 7 | |
Kimenet
A citromos süti a legjobb süti
Kiegészítés: template stringek¶
Ha egy szövegen belül be szeretnénk helyettesíteni bizonyos változók értékeit, akkor erre eddig a hagyományos string összefűzést használtuk.
1 2 | |
Ha nagyon sok behelyettesítendő értékünk van, akkor egy idő után ez a módszer fárasztóvá válhat. Szerencsére az ECMAScript 6-os szabványban bevezették az úgynevezett template stringeket, amelyek segítségével a fenti kiíratás egyszerűbben megoldható.
A template stringeket backtick-ek (AltGr + 7) között adjuk meg. Használatuk során nem kell megszakítanunk a szövegünket a változók értékének behelyettesítésekor (mint az összefűzéses módszernél), a behelyettesíteni kívánt kifejezés értékét egyszerűen ${ }-be írjuk.
1 2 | |