metodi String aiuterà a lavorare con le stringhe.
Metodi String e proprietà
Valori primitivi, come "John Doe" , non possono avere proprietà o metodi (perché non sono oggetti).
Ma con JavaScript, metodi e proprietà sono disponibili per i valori primitivi anche, perché JavaScript considera valori primitivi come oggetti durante l'esecuzione di metodi e proprietà.
String Lunghezza
La length proprietà restituisce la lunghezza di una stringa:
Trovare una stringa in una stringa
Il indexOf() restituisce l'indice (la posizione) la prima occorrenza di un testo specificato in una stringa:
Esempio
var str = "Please locate where 'locate' occurs!";
var pos = str.indexOf("locate");
Prova tu stesso " Il lastIndexOf() restituisce l'indice dell'ultima occorrenza di un testo specificato in una stringa:
Esempio
var str = "Please locate where 'locate' occurs!";
var pos = str.lastIndexOf("locate");
Prova tu stesso " Sia il indexOf() , e il lastIndexOf() metodi restituiscono -1 se il testo non viene trovato.
JavaScript risiedono posizioni da zero.
0 è la prima posizione in una stringa, 1 è la seconda, 2 è la terza ...
Entrambi i metodi accettano un secondo parametro come posizione di partenza per la ricerca.
Ricerca di una stringa in una stringa
La search() metodo cerca una stringa per un valore specificato e restituisce la posizione della partita:
Esempio
var str = "Please locate where 'locate' occurs!";
var pos = str.search("locate");
Prova tu stesso " Hai notato?
I due metodi, indexOf() e search() , sono uguali.
Essi accettano gli stessi argomenti (parametri), e restituiscono lo stesso valore.
I due metodi sono uguali, ma la search() metodo può prendere molto più potenti valori di ricerca.
Imparerete di più su potenti valori di ricerca nel capitolo sulle espressioni regolari.
Estrazione parti degli archi
Ci sono 3 metodi per l'estrazione di una parte di una stringa:
- slice(start, end)
- substring(start, end)
- substr(start, length)
La slice() Metodo
slice() estrae una parte di una stringa e restituisce la parte estratto in una nuova stringa.
Il metodo prende 2 parametri: l'indice di partenza (posizione), e l'indice finale (posizione).
Questo esempio fette di una porzione di una stringa dalla posizione 7 alla posizione 13:
Esempio
var str = "Apple, Banana, Kiwi";
var res = str.slice(7,13);
Il risultato della res sarà:
Banana
Prova tu stesso " Se un parametro è negativo, la posizione viene contato dalla fine della stringa.
Questo esempio fette di una porzione di una stringa dalla posizione -12 alla posizione -6:
Esempio
var str = "Apple, Banana, Kiwi";
var res = str.slice(-12,-6);
Il risultato della res sarà:
Banana
Prova tu stesso " Se si omette il secondo parametro, il metodo sarà tagliare il resto della stringa:
o, a decorrere dalla fine:
posizioni negative non funzionano in Internet Explorer 8 e versioni precedenti.
Il substring() Metodo
substring() è simile a slice() .
La differenza è che substring() non può accettare gli indici negativi.
Esempio
var str = "Apple, Banana, Kiwi";
var res = str.substring(7,13);
Il risultato della res sarà:
Banana
Prova tu stesso " Se si omette il secondo parametro, substring() taglierà fuori il resto della stringa.
Il substr() Metodo
substr() è simile a slice() .
La differenza è che il secondo parametro specifica la length della parte estratta.
Esempio
var str = "Apple, Banana, Kiwi";
var res = str.substr(7,6);
Il risultato della res sarà:
Banana
Prova tu stesso " Se il primo parametro è negativo, la posizione conta dalla fine della stringa.
Il secondo parametro non può essere negativo, perché definisce la lunghezza.
Se si omette il secondo parametro, substr() taglierà fuori il resto della stringa.
Sostituzione stringa di contenuto
Il replace() metodo sostituisce un valore specificato con un altro valore in una stringa:
Il replace() metodo può anche prendere una espressione regolare come valore di ricerca.
Per impostazione predefinita, il replace() funzione sostituisce solo la prima partita. Per sostituire tutte le partite, usare una espressione regolare con bandiera AG (per corrispondenza globale):
Esempio
str = "Please visit Microsoft!";
var n = str.replace(/Microsoft/g,"w3ii");
Prova tu stesso " Il replace() metodo non cambia la stringa è chiamato. Restituisce una nuova stringa.
Conversione in Maiuscolo
Una stringa viene convertita in maiuscolo con toUpperCase() :
Esempio
var text1 = "Hello World!"; // String
var text2 = text1.toUpperCase(); // text2 is text1 converted to upper
Prova tu stesso " Una stringa viene convertita in minuscolo con toLowerCase() :
Esempio
var text1 = "Hello World!"; // String
var text2 = text1.toLowerCase(); // text2 is text1
converted to lower
Prova tu stesso " Il concat() Metodo
concat() unisce due o più stringhe:
Esempio
var text1 = "Hello";
var text2 = "World";
text3 = text1.concat(" ",text2);
Prova tu stesso " Il concat() metodo può essere usato al posto del l'operatore più. Queste due linee fanno lo stesso:
Esempio
var text = "Hello" + " " + "World!";
var text = "Hello".concat(" ","World!");
Tutti i metodi stringa restituita una nuova stringa. Essi non modificano la stringa originale.
Formalmente ha detto: Le stringhe sono immutabili: Stringhe non può essere modificato, ma solo sostituito.
Estrazione caratteri della stringa
Ci sono 2 metodi sicuri per l'estrazione di caratteri della stringa:
- charAt(position)
- charCodeAt(position)
Il charAt() Metodo
Il charAt() restituisce il carattere in un indice specifico (posizione) in una stringa:
Il charCodeAt() Metodo
Il charCodeAt() metodo restituisce il unicode del carattere in un indice specificato in una stringa:
Accesso a una stringa come un array è pericoloso
Potreste aver visto il codice come questo, l'accesso a una stringa come un array:
var str = "HELLO WORLD";
str[0]; // returns H
Questo è pericoloso e imprevedibile:
- Esso non funziona in tutti i browser (non in IE5, IE6, IE7)
- Rende stringhe sembrano array (ma non sono)
- str[0] = "H" non dà un errore (ma non funziona)
Se volete leggere una stringa come un array, convertirlo in un array prima.
La conversione di una stringa in un array
Una stringa può essere convertito in un array con la split() metodo:
Esempio
var txt = "a,b,c,d,e"; // String
txt.split(","); // Split on commas
txt.split(" "); // Split on spaces
txt.split("|"); // Split on pipe
Prova tu stesso " Se il separatore viene omesso, la matrice restituita conterrà l'intera stringa nell'indice [0].
Se il separatore è "", la matrice restituita sarà una serie di singoli caratteri:
Completa stringa di riferimento
Per un riferimento completo, visitare il nostro riferimento completo stringa JavaScript .
Il riferimento contiene le descrizioni ed esempi di tutte le proprietà ei metodi delle stringhe.
Mettiti alla prova con esercizi!
Esercizio 1 » Esercizio 2» Esercizio 3 » Esercizio 4» Esercizio 5 » Esercizio 6»