Rumah  >  Artikel  >  hujung hadapan web  >  includes() vs indexOf() dalam JS, mari kita bincangkan tentang perbezaan mereka

includes() vs indexOf() dalam JS, mari kita bincangkan tentang perbezaan mereka

青灯夜游
青灯夜游ke hadapan
2021-12-20 16:36:274815semak imbas

Artikel ini akan membandingkan secara ringkas kaedah termasuk() dan indexOf() dalam JavaScript dan bercakap tentang perbezaannya, saya harap ia akan membantu anda.

includes() vs indexOf() dalam JS, mari kita bincangkan tentang perbezaan mereka

1 Perbezaan asas

  • termasuk() dan indexOf() Kesemuanya digunakan untuk menyemak sama ada tatasusunan mengandungi elemen tertentu Nilai pulangan bagi includes() ialah nilai Boolean dan indexOf() mengembalikan nilai indeks, -1 dikembalikan. [Cadangan berkaitan: tutorial pembelajaran javascript]

let arr = [1,2,3]
arr.indexOf(0)	// -1
arr.indexOf(2)	// 1
arr.includes(2)	// true

2. Semak NAN dan undefined

  • Oleh kerana indexOf() mengikut ketat operator === untuk membandingkan nilai, indexOf() tidak boleh menyemak NAN, tetapi include() boleh

let arr = [NaN,]
arr.indexOf(NaN)	// -1
arr.indexOf(undefined) // -1
arr.includes(NaN)	// true
arr.includes(undefined)	// true

3 Tandakan -0 dan 0

  • termasuk() dan indexOf() jangan bezakan antara -0 dan 0, Apabila menilai , kedua-duanya dianggap sama

let arr = [+0]
arr.includes(-0) // true
arr.indexOf(-0) // 0

4. Jenis data yang kompleks tidak boleh disemak

  • Kedua-duanya hanya boleh menilai jenis data ringkas, tetapi tidak boleh menilai jenis data yang kompleks seperti objek dan tatasusunan

let arr = [{a:1},{a:2}]
arr.includes({a:1}) // false
arr.indexOf({a:1}) // -1

5 , indexOf( ) boleh digunakan dalam rentetan

  • untuk mengembalikan kedudukan di mana aksara yang dinyatakan mula-mula muncul, dan terdapat penukaran tersirat

let str = 'a1b2c3'
str.indexOf('2')); //3
str.indexOf(1)); //3

Untuk lebih banyak pengetahuan berkaitan pengaturcaraan, sila lawati: Video Pengaturcaraan! !

Atas ialah kandungan terperinci includes() vs indexOf() dalam JS, mari kita bincangkan tentang perbezaan mereka. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:juejin.cn. Jika ada pelanggaran, sila hubungi admin@php.cn Padam