JavaScript cz.3 - ciągi znaków, String


String (łańcuch, ciąg znaków) - tekstowy typ danych

Łańcuch JavaScript to zero lub więcej znaków wpisanych w cudzysłowie (pojedynczym lub podwójnym). Drugi typ cudzysłowia można użyć wewnątrz jako zwykłego cudzysłowia. Jeśli potrzebujesz ich więcej - użyj znaku \ przed znakiem, zmienia on znak specjalny w zwykły znak.
var zdanie = "Nie jestem 'biały'"; var zdanie = "Nie jestem \"biały\"";

Przy okazji... sekwencje specjalne JS typu \n (nowa linia) czy \r powrót karetki czy \t (znak tabulacji) itp. nie mają sensu w HTML i są w nim bezużyteczne. Możesz je jednak użyć np. w okienku alertu. 🛠

Łańcuch znaków jako Obiekt

Zwykle łańcuchy JavaScript są wartościami pierwotnymi, utworzonymi z literałów:

var imie = "Piotr";
Ale ciągi znaków można również zdefiniować jako obiekty ze słowem kluczowym new:
var imie = new String("Piotr");

jednak zauważ, że zwolnisz wykonanie kodu i skomplikujesz go, gdyż:

var x1 = "Piotr";
var x2 = "Piotr";
var y1 = new String("Piotr");
var y2 = new String("Piotr"); 

document.writeln(typeof x1);        // string
document.writeln(typeof x2);        // string
document.writeln(typeof y1);       // object
document.writeln(typeof y2);       // object
document.write("
"); document.writeln(x1==x2); // true document.writeln(x1===x2); // true document.writeln(y1==y2); // false ! (różne obiekty !) document.writeln(x1==y1); // true (identyczne wartości) document.writeln(x1===y1); // false ! (różne typy)

Lepiej więc tego nie rób jeśli nie musisz. :)


Metody i właściwości łańcucha znaków, String

Obiekty mają właściwości i metody. Wartości pierwotne nie mogą ich mieć. Jednak w JS wartości pierwotne są traktowane jak obiekty podczas wykonywania metod i właściwości.

Właściwości String

Właściwość Opis Składnia
constructor Zwraca funkcję konstruktora łańcucha. Zwracana wartość jest odwołaniem do funkcji, a nie nazwą funkcji. string.constructor
length Zwraca długość łańcucha string.length
prototype Umożliwia dodawanie właściwości i metod do obiektu object.prototype.name = value

Metody String

Wszystkie metody łańcuchowe zwracają nową wartość. Nie zmieniają oryginalnej zmiennej.

Metoda Opis Składnia
charAt() Zwraca znak o określonym indeksie (pozycji) string.charAt(index)
charCodeAt() Zwraca Unicode znaku o określonym indeksie string.charCodeAt(index)
concat() Łączy dwa lub więcej ciągów i zwraca nowe połączone ciągi string.concat(string1, string2, ..., stringN)
endsWith() Sprawdza, czy łańcuch kończy się określonym ciągiem / znakami. Zwraca prawdę lub fałsz (true, false). string.endsWith(szukanaWartość, długość)
fromCharCode() Konwertuje wartości Unicode na znaki String.fromCharCode(kod1, kod2, ..., kodN)
includes() Sprawdza, czy ciąg zawiera określony ciąg / znaki string.includes(szukanaWartość, index-start)
indexOf() Zwraca pozycję pierwszego znalezionego wystąpienia określonej wartości w ciągu lub -1 (nie występuje) string.indexOf(szukanaWartość, index-start)
lastIndexOf() Zwraca pozycję ostatniego znalezionego wystąpienia określonej wartości w ciągu lub -1 (nie występuje) string.lastIndexOf(szukanaWartość, index-start)
localeCompare() Porównuje dwa ciągi znaków w bieżącym języku i wskazuje kolejność sortowania zwracając -1, 0, 1 (łańcuch sortowany przed porównywanym, równy, po) string.localeCompare(łańcuchPorównywany)
match() Przeszukuje ciąg znaków pod kątem dopasowania do wyrażenia regularnego 🛠 i zwraca dopasowania jako obiekt Array (tablicę). Null jeśli nie znaleziono dopasowania. string.match(regexp)
repeat() Zwraca nowy ciąg znaków z określoną liczbą kopii istniejącego ciągu string.repeat(liczbaKopii)
replace() Przeszukuje łańcuch pod kątem określonej wartości lub wyrażenia regularnego 🛠 i zwraca nowy łańcuch, w którym określone wartości są zastępowane string.replace(szukanaWartość, nowaWartość)
search() Przeszukuje łańcuch pod kątem określonej wartości lub wyrażenia regularnego 🛠 i zwraca pozycję pierwszego dopasowania string.search(szukanaWartość)
slice() Wyodrębnia część łańcucha i go zwraca (kopia wycięcia). Od <start, end). Drugą wartość (koniec) można pominąć. Wycięcie ostatniego znaku oznaczamy przez -1. string.slice(start_index, end_index)
split() Dzieli łańcuch na tablicę podciągów. Zwraca tablicę. Limit to maksymalna liczba podłańcuchów do wypisania. string.split(separator, limit)
startsWith() Sprawdza, czy ciąg zaczyna się od określonych znaków. Zwraca true lub false. string.startsWith(sprawdzanaWartość, start-index)
substr() Wyodrębnia znaki z łańcucha, zaczynając od określonej pozycji początkowej określoną liczbę znaków string.substr(start-index, length)
substring() Wyodrębnia znaki z ciągu między dwoma określonymi indeksami <początek, koniec). string.substring(start-index, end-index)
toLocaleLowerCase() Konwertuje ciąg na małe litery, zgodnie z ustawieniami regionalnymi hosta string.toLocaleLowerCase()
toLocaleUpperCase() Konwertuje ciąg na wielkie litery, zgodnie z ustawieniami regionalnymi hosta string.toLocaleUpperCase()
toLowerCase() Konwertuje ciąg na małe litery string.toLowerCase()
toUpperCase() Konwertuje ciąg na wielkie litery string.toUpperCase()
trim() Usuwa białe znaki z obu końców łańcucha string.trim()
toString() Zwraca wartość obiektu String string.toString()
valueOf() Zwraca pierwotną wartość obiektu String. JS stosuje ją automatycznie. string.valueOf()
Metody String HTML Wrapper

Metody owijania HTML zwracają łańcuch zawinięty w odpowiedni znacznik HTML. Nie są standardowe i mogą nie działać we wszystkich przeglądarkach zgodnie z oczekiwaniami

anchor() tworzy anchor (kotwicę)
big() Wyświetla ciąg przy użyciu dużej czcionki
bold() Wyświetla pogrubiony ciąg
fixed() Wyświetla ciąg przy użyciu czcionki fixed-pitch
fontcolor() Wyświetla ciąg przy użyciu określonego koloru
fontsize() Wyświetla ciąg przy użyciu określonego rozmiaru czcionki
italics() Wyświetla ciąg kursywą
link() Wyświetla ciąg jako hiperłącze
small() Wyświetla ciąg przy użyciu małej czcionki
sub() Wyświetla ciąg jako tekst indeksu dolnego
sup() Wyświetla ciąg jako tekst indeksu górnego

Następny rozdział: liczby (Number) lub menu jest po prawej stronie -->