findIndex ve some
findIndex ile koşulu sağlayan ilk indexi ve some ile herhangi bir eşleşmeyi öğrenirsin.
findIndex ile koşula uyan ilk indeks
findIndex metodu, bir koşul fonksiyonu (predicate) alır ve koşulu sağlayan ilk elemanın indeksini döner. Bulamazsa -1 döner.
Örnek: [10, 25, 30].findIndex(n => n > 20) sonucu 1'dir. Çünkü 25, 20'den büyük ilk elemandır ve indeksi 1'dir.
Predicate her eleman için true/false döner; findIndex true döndüğü ilk indeksi alır.
some ile en az bir eleman kontrolü
some metodu, bir koşul fonksiyonu alır ve en az bir eleman koşulu sağlıyorsa true döner. Hiçbiri sağlamıyorsa false döner.
Örnek: [5, 12, 8].some(n => n > 10) sonucu true'dur çünkü 12, 10'den büyüktür. [1, 2, 3].some(n => n > 10) false döner.
some kısa devre yapar: ilk true'da durur ve dizinin geri kalanını kontrol etmez.
Uygulama scores dizisinde 50'den büyük ilk indeksi bul
scores adında en az dört sayı içeren bir dizi oluştur. scores.findIndex ile 50'den büyük ilk elemanın indeksini bul ve sonucu console.log ile yazdır.
Örnek çözümü göster
Diziyi yaz, sonra scores.findIndex ile 50'den büyük ilk elemanı bul ve sonucu yazdır.
Örnek çözüm:
const scores = [10, 30, 60, 80];
const i = scores.findIndex(s => s > 50);
console.log(i);
Uygulama ages dizisinde 18'den küçük yaş var mı kontrol et
ages adında en az dört sayı içeren bir dizi oluştur. ages.some ile 18'den küçük bir yaş var mı kontrol et ve sonucu console.log ile yazdır.
Örnek çözümü göster
Diziyi yaz, sonra ages.some ile 18'den küçük bir yaş var mı kontrol et ve sonucu yazdır.
Örnek çözüm:
const ages = [25, 30, 15, 40];
const hasMinor = ages.some(a => a < 18);
console.log(hasMinor);
Kendini test et
-
Bu kod ne yazdırır?
const nums = [5, 12, 8, 30]; const i = nums.findIndex(n => n > 20); console.log(i);- 0
- 3
- 1
- -1
Cevabı göster
3 — Doğru. 30, 20'den büyük ilk eleman; indeksi 3.
-
10'dan büyük bir eleman var mı kontrol et
const nums = [5, 12, 8]; const hasBig = nums.some(n => n > ____); console.log(hasBig);Cevabı göster
const nums = [5, 12, 8]; const hasBig = nums.some(n => n > 10); console.log(hasBig); -
Metot ve görevini eşleştir
- findIndex
- koşula uyan ilk indeks
- some
- en az biri true mu
- indexOf
- eşit olan ilk indeks