String.prototype.substring()

This translation is incomplete. Please help translate this article from English.

Metoda substring() returneaza un subgrup al unui sir de caractere de la un indice la altul sau pana la sfarsitul sirului.

Sintaxa

str.substring(indexStart[, indexEnd])

Parametrii

indexStart
O unitate 0 si lungimea unui sir, precizandu-se in offset primului caracter din sir pentru al include in subsirul returnat.
indexEnd
Optional. O unitate intre 0 si lungimea unui sir, precizandu-se offset-ul primului caracter al sirului sa nu fie inclus in subsirul returnat.

Valuarea de retur

Un nou sir continand sectiunea extrasa a sirului dat.

Descriere

substring() extrage caracterele din indexStart pana la dar nu incluzand indexEnd. Mai exact:

  • Daca indexStart este egal cu indexEnd, substring() returneaza un sir gol.
  • Daca indexEnd este omis, substring() extrage caracterele de la sfarsitul sirului.
  • Daca ambele argumente sunt mai mici de zero sau sunt NaN,se considera ca si cum ar fi 0.
  • Daca ambele argumente sunt mai mari ca stringName.length, se considera ca si cum ar fi stringName.length.

Daca indexStart este mai mare decat indexEnd, atunci efectul substring() este ca si cum cele doua argumente s-au schimbat intre ele; de exemplu, str.substring(1, 0) == str.substring(0, 1).

Exemple

Folosind substring()

Urmatorul exemplu foloseste substring() ca sa afiseze caracterele sirului 'Mozilla':

var anyString = 'Mozilla';

// Afiseaza 'Moz'
console.log(anyString.substring(0, 3));
console.log(anyString.substring(3, 0));

// Afiseaza 'lla'
console.log(anyString.substring(4, 7));
console.log(anyString.substring(4));
console.log(anyString.substring(7, 4));

// Afiseaza 'Mozill'
console.log(anyString.substring(0, 6));

// Afiseaza 'Mozilla'
console.log(anyString.substring(0, 7));
console.log(anyString.substring(0, 10));

Folosind substring() cu propietatea length.

Urmatorul exemplu foloseste metoda substring() si propietatea length pentru a extrage ultimele caractere a unui anumit sir. Aceasta metoda ar fi mai usor de memorat, avand in vedere ca nu trebuie stiut indicele de inceput si sfarsit cum ar fi in exemplele mai sus.

//Afiseaza 'illa' ultimele 4 caractere
var anyString = 'Mozilla';
var anyString4 = anyString.substring(anyString.length - 4);
console.log(anyString4);

//Afiseaza 'zilla' ultimele 5 caractere
var anyString = 'Mozilla';
var anyString5 = anyString.substring(anyString.length - 5);
console.log(anyString5);

Inlocuind un subsir cu un sir

Urmatorul exemplu inlocuieste un subsir dintr-un sir. Va inlocuiIt ambele caractere individuale si subsiruri. Functia chemata la sfarsitul exemplului va schimba sirul 'Brave New World' in 'Brave New Web'.

// Inlocuieste oldS cu newS in sirul fullS
function replaceString(oldS, newS, fullS) {
  for (var i = 0; i < fullS.length; ++i) {
    if (fullS.substring(i, i + oldS.length) == oldS) {
      fullS = fullS.substring(0, i) + newS + fullS.substring(i + oldS.length, fullS.length);
    }
  }
  return fullS;
}

replaceString('World', 'Web', 'Brave New World');

De tinut minte ca aceasta poate duce la o bucla infinita daca oldS este in sine un subsir al newS - de exemplu, daca incercati sa inlocuiti 'World' cu 'OtherWorld'. O metoda mai buna pentru a inlocui siruri ar fi dupa cum urmeaza:

function replaceString(oldS, newS, fullS) {
  return fullS.split(oldS).join(newS);
}

Codul de deasupra serveste ca exemplu pentru operatiuni cu subsiruri. Daca este nevoie sa inlocuiti subsiruri in majoritatea timpului ar fi indicat sa se foloseasca String.prototype.replace().

Specificatii

Specificatii Status Comentariu
ECMAScript 1st Edition (ECMA-262) Standard Implementat in JavaScript 1.0.
ECMAScript 5.1 (ECMA-262)
The definition of 'String.prototype.substring' in that specification.
Standard  
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'String.prototype.substring' in that specification.
Standard  
ECMAScript 2017 Draft (ECMA-262)
The definition of 'String.prototype.substring' in that specification.
Draft  

Compatibilitati browser

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support (Yes) (Yes) (Yes) (Yes) (Yes)
Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support (Yes) (Yes) (Yes) (Yes) (Yes) (Yes)

Vezi si

Document Tags and Contributors

 Contributors to this page: Mercur
 Last updated by: Mercur,