Artikel sebelumnya kita telah membahas method every(), sebetulnya method every() dan some() hampir mirip. Namun yang membedakan mereka adalah jika every() akan menghasilkan true apabila seluruh elemen sesuai dengan kriteria dari fungsi yang telah ditentukan. Akan tetapi untuk method some() hanya perlu satu element saja yang memenuhi kriteria dan akan menghasilkan nilai true.
Some() akan melakukan pengecekan keseluruh element dari awal sampai akhir element untuk menguji berdasarkan fungsi yang telah di tentukan.
Apabila terdapat satu elemen yang memenuhi kriteria maka some() akan menampilkan output true. Sedangkan jika tidak menemukan kriteria yang di maksud maka some() akan mencari hingga akhir elemen. Jika semua elemen tidak memenuhi kriteria maka some() akan menghasilkan nilai false.
Syntak
arr.some(callback(element[, index[, array]])[, thisArg])
callback: adalah fungsi untuk memanggil elemen array untuk dilakukan pengujian. Hasil dari pengujian oleh fungsi ini adalah berupa boolean
element: element pada array yang sedang di proses oleh method some()
index: penggunaan optional menunjukan index pada array yang sedang diproses
array: penggunaanya juga optional, pada argumen ini menunjukan array yang sedang dipanggil.
Contoh dan Cara kerja Some()
Contoh#1
Perhatikan kode ini agar anda mudah untuk memahami cara kerja some terhadap suatu array.
const arrays = [4, 6, 3] // membuat fungsi callback yang bernama cekArray function cekArray(element) { // cek setiap elemen apakah lebih besar dari 5? return element > 5 } console.log(arrays.some(cekArray)) // output -> true
Pada kode diatas fungsi cekArray adalah callback untuk yang bertugas mengecek semua element array apakah lebih dari 5. untuk cara kerja yang lebih detil anda dapat melihat gambar berikut ini.
- Callback mengecek pada elemet pertama

- Callback menemukan kriteria pada element kedua dan mengembalikan output true. Sehingga javascript akan mengabaikan elemen selanjutnya

Contoh#2
const arrays = [4, 2, 3] // membuat fungsi callback yang bernama cekArray function cekArray(element) { // cek setiap elemen apakah lebih besar dari 5? return element > 5 } console.log(arrays.some(cekArray)) // output -> false
Output yang dihasilkan adalah false karena callback telah menguji semua array dan tidak mendapatkan kriteria nilai element lebih dari 5.
- fungsi callback melakukan pengecekan pada element pertama

- fungsi callback melakukan pengecekan pada element yang kedua

- Output yang dihasilkan adalah false karena elemen pada array semuanya tidak lebih dari 5.

Dalam tutorial kali ini saya harap anda mengerti penggunaan some() dan dapat membedakan penggunaan some() dan every().