Mencari Subrentetan dalam JavaScript
Banyak bahasa pengaturcaraan menyediakan kaedah mudah untuk menyemak sama ada rentetan mengandungi subrentetan tertentu. Walau bagaimanapun, walaupun jangkaan, bahasa JavaScript tidak mempunyai kaedah String.contains() khusus.
Mencari Penyelesaian
Untuk pembangun JavaScript, terdapat beberapa alternatif untuk mengesan subrentetan:
String.prototype.includes (ES6 ):
Diperkenalkan dalam ECMAScript 6, kaedah ini mengembalikan boolean yang menunjukkan sama ada rentetan itu mengandungi subrentetan yang ditentukan.
const string = "foo"; const substring = "oo"; console.log(string.includes(substring)); // true
String.prototype.indexOf:
Kaedah ini mengembalikan indeks pertama subrentetan dalam rentetan, atau -1 jika ia tidak dijumpai. Anda boleh menyemak sama ada indeks lebih besar daripada atau sama dengan 0 untuk menentukan kewujudan subrentetan.
const string = "foo"; const substring = "oo"; const index = string.indexOf(substring); console.log(index !== -1); // true
String.prototype.search:
Serupa dengan indexOf, tetapi melakukan carian ungkapan biasa. Ia mengembalikan indeks padanan pertama atau -1 jika tidak dijumpai. Walau bagaimanapun, memandangkan subrentetan bukan ungkapan biasa secara lalai, anda perlu memberi awalan subrentetan dengan .
const string = "foo"; const substring = "oo"; const index = string.search(`\${substring}`); console.log(index !== -1); // true
String.prototype.match:
Kaedah ini mengembalikan tatasusunan padanan yang terdapat dalam rentetan. Jika tatasusunan mempunyai sekurang-kurangnya satu item, subrentetan itu wujud.
const string = "foo"; const substring = "oo"; const matches = string.match(substring); console.log(matches.length > 0); // true
Kesimpulan:
Walaupun JavaScript tidak mempunyai kaedah mengandungi khusus, pembangun mempunyai beberapa pilihan berdaya maju untuk menyemak subrentetan, masing-masing mempunyai ciri prestasi tersendiri dan kesesuaian untuk kes penggunaan tertentu.
Atas ialah kandungan terperinci Bagaimanakah saya boleh menyemak subrentetan dengan cekap dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!