Rumah  >  Artikel  >  hujung hadapan web  >  Perbezaan antara substring(), substr() dan slice() dalam javascript

Perbezaan antara substring(), substr() dan slice() dalam javascript

PHPz
PHPzasal
2016-05-16 15:41:291695semak imbas

Terdapat tiga fungsi pemintasan aksara yang biasa digunakan dalam js: slice(), substring(), dan substr() Mari perkenalkan kepada anda fungsi slice(), substring(), dan substr() dalam pemintasan aksara. Beberapa kegunaan dan perbezaan.

stringObject.substring(start,stop)

digunakan untuk mengekstrak rentetan antara dua Tentukan watak antara subskrip.

permulaan diperlukan. Integer bukan negatif yang menentukan kedudukan dalam stringObject bagi aksara pertama subrentetan untuk diekstrak.

berhenti adalah pilihan. Integer bukan negatif yang merupakan satu kedudukan dalam stringObject yang satu lebih daripada aksara terakhir subrentetan yang akan diekstrak. Jika parameter ini diabaikan, subrentetan yang dikembalikan akan pergi ke penghujung rentetan.

mula bermula dari 0 dan berakhir dengan hentian (tidak termasuk hentian tidak diterima).

stringObject.substr(start,length)

Boleh mengekstrak bilangan aksara yang ditentukan bermula dari subskrip permulaan dalam rentetan

mula Diperlukan. Indeks permulaan subrentetan yang akan diekstrak. Mestilah nilai angka. Jika negatif, parameter ini mengisytiharkan kedudukan dari hujung rentetan. Iaitu, -1 merujuk kepada aksara terakhir dalam rentetan, -2 merujuk kepada aksara kedua hingga terakhir, dan seterusnya.

panjang pilihan. Bilangan aksara dalam subrentetan. Mestilah nilai angka. Jika parameter ini ditinggalkan, rentetan dari awal hingga akhir stringObject dikembalikan.

stringObject.slice(start,end)

Ekstrak bahagian tertentu rentetan dan kembalikan bahagian yang diekstrak sebagai Bahagian rentetan baharu

mulakan Indeks permulaan segmen yang akan diekstrak. Jika ia adalah nombor negatif, parameter ini menentukan kedudukan bermula dari hujung rentetan. Iaitu, -1 merujuk kepada aksara terakhir rentetan, -2 merujuk kepada aksara kedua hingga terakhir, dan seterusnya.

tamat Indeks sejurus selepas hujung segmen yang akan diekstrak. Jika parameter ini tidak ditentukan, subrentetan yang akan diekstrak termasuk rentetan dari mula hingga akhir rentetan asal. Jika parameter ini negatif, ia menentukan kedudukan dari hujung rentetan.

Mengembalikan rentetan baharu termasuk semua aksara stringObject dari mula (termasuk mula) hingga akhir (tidak termasuk akhir)

string.slice()
string.substring()
string.substr()
 
var stringValue = “hello world”;
alert(stringValue.slice(3));          //”lo world”
alert(stringValue.substring(3));      //”lo world”
alert(stringValue.substr(3));        //”lo world”
alert(stringValue.slice(3,7));         //”lo w”
alert(stringValue.substring(3,7));    //”lo w”
alert(stringValue.substr(3,7));       //”lo worl”

Jika ada sahaja satu parameter n antara tiga, rentetan yang tinggal akan dikembalikan bermula dari kedudukan ke-n (kedudukan dikira dari 0)

Jika terdapat dua parameter n, m, slice dan substring akan Mengembalikan rentetan bermula pada kedudukan ke-n dan berakhir pada kedudukan ke-m (tidak termasuk kedudukan ke-m), manakala substr akan mengembalikan aksara m bermula pada kedudukan ke-n.

string.slice()
string.substring()
string.substr()
var stringValue = “hello world”;
alert(stringValue.slice(-3));          //”rld”
alert(stringValue.substring(-3));      //”hello world”
alert(stringValue.substr(-3));        //”rld”
alert(stringValue.slice(3,-4));         //”lo w”
alert(stringValue.substring(3,-4));    //”hel”
alert(stringValue.substr(3,-4));       //”"(空字符串)

Apabila parameter ialah nilai negatif, slice akan menambah nilai negatif pada panjang rentetan (string.length), dan substr akan menambah nilai negatif One argumen ditambah panjang rentetan, yang kedua ditukar kepada 0, subrentetan akan menukar semua nilai negatif kepada 0.

Pelaksanaan JavaScript IE mempunyai masalah apabila mengendalikan nilai negatif yang dihantar kepada kaedah substr() dan ia mengembalikan rentetan asal.

Di atas ialah keseluruhan kandungan bab ini Untuk lebih banyak tutorial berkaitan, sila lawati Tutorial Video JavaScript!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn