Operacje na zmiennych tekstowych w JavaScript
Stronę tą wyświetlono już: 13330 razy
Łączenie ciągów znaków z innymi typami prostymi
Połączenie dwóch zmiennych tekstowych w JavaScript jest banalnie proste i odbywa się za pomocą operatora dodawania:
- var text = "Tekst";
- var text2 = "do połączenia";
- alert(text + " " + "do połączenia");
Wynikiem działania powyższego skryptu będzie wyświetlenie okna dialogowego z tekstem: Tekst do połączenia.
Można również łączyć tekst z zmiennymi liczbowymi. Oto przykład:
- var age = 20;
- var name = "Jacek";
- alert(name + " ma " + age + " lat");
Połączenie powyższego tekstu da w wyniku: Jacek ma 20 lat.
Pozyskanie długości ciągu znaków zawartego w zmiennej tekstowej za pomocą właściwości length
- var text = "jakiś tekst";
- alert(text.length);
Wyciąganie pojedynczego znaku z ciągu znaków i interowanie po ciągu znaków
Ciąg znaków to jest tak naprawdę tablica, więc czemuż by nie wyciągnąć pojedynczego znaku tak jak to się robi z elementami tablicy:
- var text = "jakiś tekst";
- echo(text[4]); // wyświetli piątą literę, czyli: ś
Iterowanie za pomocą pętli for:
- var text = "jakiś tekst";
- for(var i = 0; i < text.length; i++){
- if(text[i] == 'ś'){
- alert("ś znaleziono na pozycji " + i);
- }
- }
Przycinanie tekstu za pomocą metody substr
Zmienne tekstowe posiadają metodę substr, która umożliwia ich przycinanie. Oto przykład przycięcia tekstu:
- var text = "Jacek ma 20 lat";
- alert(text.substr(0, 5)); // wycina i wyświetla pierwszych pięć znaków tekstu
- alert(text.substr(-5)); // wycina i wyświetla sześć ostatnich znaków tekstu
Znajdowanie tekstu w tekście za pomocą metody search
Metoda search zwraca indeks pierwszego wystąpienia tekstu w danym ciągu znaków. Jeżeli tekst nie zostanie znaleziony to zwracana wartość jest równa -1. Funkcja ta używa również wyrażeń regularnych. Oto przykład prostego jej użycia:
- var text = "obliczeniowo.com.pl";
- alert(text.search("com")); // zwróci położenie "com" w tekście
Metoda ta zwraca uwagę na wielkość liter, aby tego uniknąć można użyć następującego wyrażenia regularnego:
- var text = "Żółty jest kolorem słonecznym, żółty jest kolorem ciepłym";
- alert(text.search(/żółty/i));
Zamiana tekstu w tekście za pomocą metody replace
Metoda replace przyjmuje dwa argumenty, pierwszy z nich to zamieniany tekst a drugi to tekst wstawiany. Metoda ta zwraca wynik swojego działania.
- var text = "Jacek ma 20 lat";
- alert(text.replace("Jacek", "Maciek"));
Podział tekstu za pomocą metody split
Metoda split zwraca tablicę tekstu podzielonego względem podanego jako pierwszy argument tej funkcji separatora. Drugi argument (opcjonalny) określa maksymalną liczbę podziału. Oto przykład:
- var names = "Maciek, Ania, Michał, Robert, Aga";
- var namesTable = names.split(", ");
- for(var i = 0; i < namesTable.length; i++){
- alert(namesTable[i]);
- }
Formatowanie zmiennych liczbowych przy zamianie na tekst
Załóżmy, że dana liczba całkowita powinna zawsze mieć długość 3 znaków i, że jest pewne, iż liczba ta nigdy nie przekroczy długość tych trzech znaków, wtedy to można liczbę taką sformatować następująco:
- var int_number = 20;
- alert(("00" + int_number).substr(-3)); // metoda substr przycina tekst do trzech znaków licząc od tyłu
Powyższa metoda nie jest zbyt elegancka i ma pewną wadę, mianowicie taką, że gdy liczba będzie np. 4-ro cyfrowa to pierwsza cyfra zostanie ucięta.
Nieco lepiej ma się sytuacja w przypadku formatowania zmiennych zmiennoprzecinkowych, albowiem dostępna jest funkcja toFixed, która to z kolei umożliwia określenie do ilu cyfr po przecinku ma być wyświetlona liczba zmiennoprzecinkowa:
- var pi = 3.14159265359;
- alert(pi.toFixed(3)); // wyświetli: 3.141
- var float_number = 3.2;
- alert(float_number.toFixed(3)); // wyświetli: 3.200
Możliwe jest również uzyskanie notacji naukowej w formacie np. 1e3 co odpowiada zapisowi 103. W celu uzyskania takiego zapisu konieczne jest skorzystanie z funkcji toExponential w podobny do poprzedniego sposób:
- var float_number = 3200.56;
- alert(float_number.toExponential(3)); // wyświetli: 3.201e3

Tytuł:
JavaScript funkcyjnie. Zrównoważone, pragmatyczne programowanie funkcyjne w JavaScript
Autor:
Kyle Simpson

Tytuł:
JavaScript dla dzieci dla bystrzaków
Autor:
Chris Minnick, Eva Holland

Tytuł:
Modularny JavaScript dla zaawansowanych
Autor:
Nicolas Bevacqua

Tytuł:
JavaScript w praktyce. Stwórz twitterowego bota, system sygnalizacyjny LED i inne projekty z użyciem Node.js i Raspberry Pi
Autor:
Lynn Beighley

Tytuł:
Matematyka dla programistów JavaScript
Autor:
Jacek Piechota

Tytuł:
JavaScript i jQuery. Interaktywne strony WWW dla każdego. Podręcznik Front-End Developera
Autor:
Jon Duckett

Tytuł:
ECMAScript 6. Przewodnik po nowym standardzie języka JavaScript
Autor:
Nicholas C. Zakas

Tytuł:
JavaScript i wzorce projektowe. Programowanie dla zaawansowanych. Wydanie II
Autor:
Simon Timms

Tytuł:
HTML,CSS i JavaScript dla każdego. Wydanie VII
Autor:
Laura Lemay, Rafe Colburn, Jennifer Kyrnin

Tytuł:
Roboty JavaScript od podstaw. Projekty NodeBots dla platformy Johnny-Five z wykorzystaniem płytek Raspberry Pi, Arduino oraz BeagleBone
Autor:
Rick Waldron, Backstop Media (lista współautorów w uwagach dodatkowych)