javascript - Mengapa fasle di atas dan benar di bawah
给我你的怀抱
给我你的怀抱 2017-05-18 11:01:39
0
3
635

Mengapa bahagian atas adalah fasle dan bahagian bawah adalah benar

var re = null ,result ,i;
for (i=0; i < 10; i++){
    re = new RegExp("cat", "g");
    re.test("catastrophe");
    console.log(re.test("catastrophe")); //false
    result = re.test("catastrophe");
    console.log(result);  //true
}
给我你的怀抱
给我你的怀抱

membalas semua(3)
为情所困

Petikan berikut adalah daripada http://www.w3school.com.cn/js...

Harta JavaScript lastIndex
objek RegExp JavaScript
Definisi dan penggunaan
Harta lastIndex digunakan untuk menentukan kedudukan permulaan perlawanan seterusnya.
Syntax
RegExpObject.lastIndex
Description
Atribut ini menyimpan integer, yang mengisytiharkan kedudukan aksara pertama selepas teks dipadankan terakhir.
Hasil padanan terakhir ditemui oleh kaedah RegExp.exec() dan RegExp.test(), yang kedua-duanya menggunakan kedudukan yang ditunjuk oleh atribut lastIndex sebagai titik permulaan untuk pengambilan seterusnya. Dengan cara ini, anda boleh lelaran melalui semua teks yang sepadan dalam rentetan dengan memanggil dua kaedah ini berulang kali.
Harta ini boleh dibaca dan ditulis. Ia boleh ditetapkan apabila carian seterusnya untuk rentetan sasaran bermula. Apabila kaedah exec() atau test() tidak lagi dapat mencari teks yang sepadan, mereka secara automatik menetapkan semula sifat lastIndex kepada 0.
Petua dan Nota
Penting: Objek RegExp yang tidak mempunyai bendera g dan tidak mewakili mod global tidak boleh menggunakan sifat lastIndex.
Petua: Jika anda mula mendapatkan satu lagi rentetan baharu selepas berjaya memadankan rentetan tertentu, anda perlu menetapkan sifat ini kepada 0 secara manual.

小葫芦

PHPzhong

Anda boleh lihat di sini, http://www.dewen.net.cn/q/468/
Oleh kerana tanda padanan global g digunakan dalam ungkapan biasa, ungkapan biasa akan merekodkan kedudukan padanan yang berjaya lastIndex, dan teruskan padanan dari Kedudukan ini perlawanan ke belakang.
Jadi bila matching untuk kali kedua, tak perlu tengok kucing sebelumnya, cabut g sahaja.

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan