Metode de coarde ajuta să lucrați cu siruri de caractere.
Metode STRING și Proprietăți
Valori primitive, cum ar fi "John Doe" , nu poate avea proprietăți sau metode (because they are not objects) .
Dar, cu JavaScript, metode și proprietăți sunt, de asemenea, disponibile la valorile primitive, deoarece JavaScript tratează valori primitive ca obiecte atunci când se execută metode și proprietăți.
string Lungime
length Proprietatea returnează lungimea unui șir de caractere:
Găsirea unui șir într-un șir
indexOf() Metoda returnează indicele (the position of) prima apariție a unui text specificat într - un șir de caractere:
Exemplu
var str = "Please locate where 'locate' occurs!";
var pos = str.indexOf("locate");
Încearcă - l singur » lastIndexOf() metoda returneaza indicele ultimei apariții a unui text specificat într - un șir de caractere:
Exemplu
var str = "Please locate where 'locate' occurs!";
var pos = str.lastIndexOf("locate");
Încearcă - l singur » Atât indexOf() , și lastIndexOf() metode de a reveni -1 dacă textul nu este găsit.
JavaScript contează pozițiile de la zero.
0 este prima poziție într-un șir de caractere, 1 este al doilea, 2 este al treilea ...
Ambele metode accepta un al doilea parametru ca poziția de pornire pentru căutare.
Căutarea unui șir într-un șir
search() metoda de căutări efectuate de un șir de caractere pentru o valoare specificată și returnează poziția meciului:
Exemplu
var str = "Please locate where 'locate' occurs!";
var pos = str.search("locate");
Încearcă - l singur » Ai observat?
Cele două metode, indexOf() și search() , sunt egale.
Ei acceptă aceleași argumente (parameters) , și se întorc aceeași valoare.
Cele două metode sunt egale, dar de search() metoda poate lua valori de căutare mult mai puternic.
Vei afla mai multe despre valorile de căutare puternice în capitolul despre expresiile regulate.
Piese de coarde Extracting
Există 3 metode de extragere a unei părți dintr-un șir de caractere:
- slice(start, end)
- substring(start, end)
- substr(start, length)
slice() Metoda
slice() extrage o parte dintr - un șir de caractere și returnează partea extrase într - un șir nou.
Metoda are 2 parametri: indicele de pornire (position) , iar indicele final (position) .
Acest exemplu felii dintr-o porțiune dintr-un șir de la poziția 7 în poziția 13:
Exemplu
var str = "Apple, Banana, Kiwi";
var res = str.slice(7,13);
Rezultatul res va fi:
Banana
Încearcă - l singur » Dacă un parametru este negativ, poziția este calculată de la sfârșitul șirului.
Acest exemplu felii dintr-o porțiune dintr-un șir de la poziția -12 în poziția -6:
Exemplu
var str = "Apple, Banana, Kiwi";
var res = str.slice(-12,-6);
Rezultatul res va fi:
Banana
Încearcă - l singur » Dacă se omite al doilea parametru, metoda va felie din restul șirului:
sau, începând de la sfârșitul:
pozițiile negative nu funcționează în Internet Explorer 8 și versiunile anterioare.
substring() Metoda
substring() este similar cu slice() .
Diferența este că substring() nu poate accepta indici negativi.
Exemplu
var str = "Apple, Banana, Kiwi";
var res = str.substring(7,13);
Rezultatul res va fi:
Banana
Încearcă - l singur » Dacă se omite al doilea parametru, substring() se va tăia din restul șirului.
substr() Metoda
substr() este similar cu slice() .
Diferența este că al doilea parametru specifică length părții extrase.
Exemplu
var str = "Apple, Banana, Kiwi";
var res = str.substr(7,6);
Rezultatul res va fi:
Banana
Încearcă - l singur » În cazul în care primul parametru este negativ, poziția contează de la sfârșitul șirului.
Al doilea parametru nu poate fi negativ, deoarece definește lungimea.
Dacă se omite al doilea parametru, substr() se va tăia din restul șirului.
Înlocuirea Șir de conținut
replace() metoda înlocuiește o valoare specificată cu o altă valoare într - un șir de caractere:
Exemplu
str = "Please visit Microsoft!";
var n = str.replace("Microsoft","w3ii");
Încearcă - l singur » replace() metoda poate lua , de asemenea , o expresie regulată ca valoare de căutare.
Implicit, replace() funcție înlocuiește doar primul meci. Pentru a înlocui toate meciurile, utilizați o expresie regulată cu pavilion ag (for global match) un (for global match) la (for global match) :
Exemplu
str = "Please visit Microsoft!";
var n = str.replace(/Microsoft/g,"w3ii");
Încearcă - l singur » replace() metoda nu se schimba șirul este numit pe. Se returnează un nou șir de caractere.
Conversia la majuscule și minuscule
Un șir de caractere este convertit în majuscule cu toUpperCase() :
Exemplu
var text1 = "Hello World!"; // String
var text2 = text1.toUpperCase(); // text2 is text1 converted to upper
Încearcă - l singur » Un șir de caractere este convertit în litere mici cu toLowerCase() :
Exemplu
var text1 = "Hello World!"; // String
var text2 = text1.toLowerCase(); // text2 is text1
converted to lower
Încearcă - l singur » concat() Metoda
concat() se alătură două sau mai multe șiruri:
Exemplu
var text1 = "Hello";
var text2 = "World";
text3 = text1.concat(" ",text2);
Încearcă - l singur » concat() Metoda poate fi utilizată în locul operatorului plus. Aceste două linii fac la fel:
Exemplu
var text = "Hello" + " " + "World!";
var text = "Hello".concat(" ","World!");
Toate metodele string returnează un nou șir de caractere. Ei nu modifică șirul original.
Formal a spus: siruri de caractere sunt imuabile: Strings nu poate fi schimbat, doar înlocuit.
Caractere String Extracting
Există 2 metode sigure de extragere de caractere string:
- charAt(position)
- charCodeAt(position)
charAt() Metoda
charAt() Metoda returneaza caracterul la un indice specificat (position) într - un șir de caractere:
charCodeAt() Metoda
charCodeAt() Metoda returnează unicode caracterului la un indice specificat într - un șir de caractere:
Accesarea unui String ca o matrice este Nesigur
S-ar putea fi un cod ca acest lucru vazut, accesarea unui șir de caractere ca o matrice:
var str = "HELLO WORLD";
str[0]; // returns H
Acest lucru este nesigur și imprevizibil:
- Ea nu funcționează în toate browserele (not in IE5, IE6, IE7)
- Aceasta face ca siruri de caractere arata ca matrice (but they are not)
- str[0] = "H" nu da o eroare (but does not work)
Dacă doriți să citiți un șir de caractere ca o matrice, se transforma într-o matrice mai întâi.
Conversia unui șir într-o matrice
Un șir poate fi convertit într - o matrice cu split() metoda:
Exemplu
var txt = "a,b,c,d,e"; // String
txt.split(","); // Split on commas
txt.split(" "); // Split on spaces
txt.split("|"); // Split on pipe
Încearcă - l singur » Dacă separatorul este omis, matricea returnat va conține șir întreg în index [0].
În cazul în care separatorul este "" , matrice returnat va fi o serie de personaje unice:
Șirul complet de referință
Pentru o referință completă, du - te la nostru complet de referință JavaScript String .
Referința conține descrieri și exemple ale tuturor proprietăților șir și metode.
Testați-te cu exerciții!
Exercițiul 1 » Exercițiul 2» Exercițiul 3 » Exercițiul 4» Exercițiul 5 » Exercițiul 6»