Rumah >hujung hadapan web >tutorial js >Penjelasan terperinci tentang teknologi indexOf dalam kemahiran javascript_javascript
JavaScript menyediakan beberapa teknik untuk mencari perkataan, nombor atau rentetan aksara lain dalam rentetan. Mencari boleh menjadi mudah, sebagai contoh, jika anda ingin mengetahui pelayar web yang digunakan oleh pelawat anda untuk melihat tapak anda. Setiap pelayar web mengenal pasti maklumat tentang dirinya dalam rentetan yang mengandungi banyak statistik berbeza. Anda boleh melihat rentetan ini dengan menambahkan JavaScript berikut pada halaman web dan melihatnya dalam pelayar web:
<script> alert(navigator.userAgent); </script>
Navigator ialah objek penyemak imbas web dan userAgent ialah hak milik objek navigator. Atribut userAgent mengandungi senarai panjang maklumat Contohnya, untuk Internet Explorer 7 yang dijalankan pada Windows XP, atribut userAgent ialah: Mozilla/4.0 (serasi; MSIE 7.0; Windows NT 5.1). Jadi, jika anda ingin melihat sama ada pelayar web ialah IE 7, anda hanya boleh mencari "MSIE 7" dalam rentetan userAgent. Salah satu cara untuk mencari rentetan ialah kaedah indexOf(). Tambahkan noktah selepas rentetan, kemudian indexOf(), dan berikan rentetan yang anda cari. Struktur asas adalah seperti berikut:
string.indexOf('rentetan untuk dicari')
Kaedah indexOf() mengembalikan nombor: jika rentetan carian tidak ditemui, kaedah mengembalikan -1. Jadi, jika anda ingin menyemak Internet Explorer, anda boleh melakukan ini:
var browser=navigator.userAgent;//this is a string if(browser.indexOf('MSIE')!=-1){ //this is Internet Explorer }
Dalam contoh ini, jika indexOf() tidak menjumpai 'MSIE' dalam rentetan userAgent, ia akan mengembalikan -1, jadi keadaan menguji untuk melihat sama ada hasilnya tidak sama dengan (!=) -1. Apabila kaedah indexOf() menemui rentetan yang dicarinya, ia mengembalikan nombor yang sama dengan permulaan rentetan yang dicarinya. Contoh berikut menjadikan perkara lebih jelas sedikit:
var quote='To be, or not to be.' var searchPosition=quote.indexOf('To be');//returns 0
Di sini, indexOf() mencari kedudukan 'To be' dalam rentetan 'To be, or not to be.' Rentetan yang lebih besar bermula dengan 'To be', jadi indexOf() mencari 'To be' di kedudukan pertama. Walau bagaimanapun, cara ia diprogramkan, kedudukan pertama dianggap sebagai 0, huruf kedua (o) berada pada kedudukan 1, dan huruf ketiga (ruang dalam contoh ini) ialah 2.
Kaedah indexOf() mula mencari dari permulaan rentetan. Anda juga boleh menggunakan kaedah lastIndexOf() untuk mula mencari dari hujung rentetan. Sebagai contoh, dalam petikan Shakespeare, perkataan 'be' muncul di dua tempat, jadi, anda boleh menggunakan indexOf() untuk mencari 'be' dan lastIndexOf() untuk mencari 'be' terakhir:
var quote="To be, or not to be." var firstPosition=quote.indexOf('be');//returns 3 var lastPosition=quote.lastIndexOf('be');//returns 17
Dalam kedua-dua contoh, jika 'be' tidak wujud di mana-mana dalam rentetan, hasilnya akan menjadi -1 jika terdapat hanya satu contoh rentetan carian, indexO f() dan lastIndexOf() akan Mengembalikan nilai yang sama; , iaitu kedudukan dalam rentetan yang lebih besar di mana rentetan carian bermula.
Di atas adalah keseluruhan kandungan artikel ini, saya harap anda semua menyukainya.