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 azs
stringets.toUpperCase()
: csupa nagybetűssé alakítja azs
stringets.startsWith(v)
: igazat ad vissza, ha azs
string av
értékkel kezdődiks.endsWith(v)
: igazat ad vissza, ha azs
string av
értékre végződiks.substr(start, length)
: visszaadja azs
stringből egy részstringet, astart
indexű karakterétől kezdve,length
karakteren keresztüls.indexOf(text)
: visszaadja atext
szöveg legelső előfordulásának a kezdőindexét azs
stringen belül (-1
-et ad vissza, ha a keresett szöveg nem szerepel azs
stringben)s.replace(old, new)
: lecseréli azs
stringben a legelsőold
részstringet anew
szövegres.trim()
: eltávolítja a helyközöket azs
string elejéről és végérőls.split(delim)
: feldarabolja azs
stringetdelim
karakterek 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 |
|