Ultimele tutoriale de dezvoltare web
 

JavaScript Metode de șir


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:

Exemplu

var txt = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
var sln = txt.length;
Încearcă - l singur »

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:

Exemplu

var res = str.slice(7);
Încearcă - l singur »

sau, începând de la sfârșitul:

Exemplu

var res = str.slice(-12);
Încearcă - l singur »

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:

Exemplu

var str = "HELLO WORLD";
str.charAt(0);            // returns H
Încearcă - l singur »

charCodeAt() Metoda

charCodeAt() Metoda returnează unicode caracterului la un indice specificat într - un șir de caractere:

Exemplu

var str = "HELLO WORLD";

str.charCodeAt(0);         // returns 72
Încearcă - l singur »

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:

Exemplu

var txt = "Hello";       // String
txt.split("");           // Split in characters
Încearcă - l singur »

Ș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»