A string a JavaScript azon adattípusa, amely szöveges adat tárolására szolgál. Egyetlen karakternek nincs külön adattípusa.
Úgy hozol létre egy string literált, hogy a szöveget aposztrófok vagy idézőjelek közé teszed. Az Exercism-ön aposztrófokat használunk.
'Hello, World!'
"Hello, World!"
A szöveg néhány speciális karakterét visszaperjellel \ kell megelőzni, lásd az escape szekvenciákat az MDN-en.
const text = 'I\'m having fun.\nWhat about you?';
console.log(text);
// => I'm having fun.
// => What about you?
Az aposztrófokon és az idézőjeleken kívül úgy is létrehozhatsz stringet, hogy a szöveget backtickek közé teszed. Ez a szintaxis lehetővé teszi, hogy aposztrófokat vagy idézőjeleket, sőt új sorokat is elhelyezz benne anélkül, hogy escape-elned kellene őket. Kifejezéseket is beágyazhatsz vele, lásd a Template Stringeket a részletekért.
`A multi-line string
with 'single quotes'
and "double quotes"`;
Egy string felfogható karakterek listájaként, ahol az első karakter indexe 0.
Egy adott karakterhez a stringben szögletes zárójelekkel és a kívánt betű indexével férhetsz hozzá.
Vagy használhatod a charAt metódust is.
'cat'[1];
// => 'a'
'cat'.charAt(2);
// => 't'
A string karaktereinek számát a length tulajdonság segítségével állapíthatod meg.
'cat'.length;
// => 3
A stringek összefűzésének legegyszerűbb módja a + összeadásoperátor használata.
'I like' + ' ' + 'cats.';
// => "I like cats."
A stringek rengeteg segédmetódust kínálnak, a teljes listát az MDN dokumentációjában a stringmetódusokról találod. Az alábbi lista néhány gyakran használt segédmetódust mutat be.
toUpperCase és toLowerCase - az összes karaktert kis- vagy nagybetűssé alakítjatrim - eltávolítja a szóközöket az elejéről és a végérőlincludes, startsWith és endsWith - meghatározza, hogy egy másik string része-e az adott stringnekslice - kivágja a string egy szakaszátA fenti metódusok alkalmazása soha nem változtatja meg az eredeti stringet. Ehelyett létrejön egy új string, és az lesz visszaadva. A stringek (és más primitív adattípusok) megváltoztathatatlanok JavaScriptben. Ez azt is jelenti, hogy a fent bemutatott zárójeles szintaxissal nem tudsz más karaktert rendelni egy adott indexhez (ahogyan tömböknél tennéd).
const str = 'cat';
str[1] = 'u'; // fails silently
console.log(str);
// => 'cat'