Rumah >hujung hadapan web >tutorial js >Mengapa Kaedah Gantian JavaScript() Hanya Menggantikan Contoh Pertama?
Mengapa JavaScript Hanya Menggantikan Contoh Pertama Menggunakan Kaedah Ganti?
Apabila cuba menggantikan aksara dalam rentetan menggunakan kaedah replace() JavaScript , pengguna mungkin menghadapi masalah di mana hanya contoh pertama diganti. Untuk memahami sebab ini berlaku, adalah penting untuk mengambil perhatian kelakuan lalai bagi kaedah replace().
Dalam contoh yang disediakan, replace() digunakan pada rentetan tarikh untuk mengalih keluar semua kejadian aksara "/" . Walau bagaimanapun, hasilnya hanya menggantikan contoh pertama watak itu. Untuk menggantikan semua kejadian secara global, kaedah replace() memerlukan penambahan bendera "g", yang bermaksud "global."
Dengan menambahkan bendera "g", kaedah replace() akan mencari semua padanan corak yang ditentukan dalam rentetan dan gantikannya dengan teks gantian yang disediakan. Dalam contoh yang diberikan, kod berikut akan mencapai hasil yang diingini:
<code class="javascript">var id = 'c_' + date.replace(new RegExp("/", "g"), '');</code>
Sebagai alternatif, sintaks yang lebih pendek boleh digunakan:
<code class="javascript">var id = 'c_' + date.replace(/\//g, '');</code>
Dengan memasukkan bendera "g", JavaScript akan menggantikan semua kejadian aksara "/" dalam rentetan tarikh, memastikan ketepatan ID yang terhasil.
Atas ialah kandungan terperinci Mengapa Kaedah Gantian JavaScript() Hanya Menggantikan Contoh Pertama?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!