Javascript some Fonksiyonu

Herkese merhaba, Javascript yazılarımıza kaldığımız yerden devam ediyoruz. Bu yazımızda Javascript’te some() fonksiyonundan bahsedeceğim. Hadi başlayalım !
Table of Contents
Fonksiyon Özellikleri
some() fonksiyonu dizi fonksiyonlarından birisi ve parametre olarak aldığı callback fonksiyonundaki şartı dizi içerisindeki elemanlardan en az bir tanesi sağlıyorsa true, dizi elemanlarından hiçbiri şartı sağlamıyorsa false döndürür. Parametre olarak aldığı callback fonksiyonunun ise 1 parametreli, 2 parametreli ve 3 parametreli olmak üzere 3 farklı kullanımı vardır. 1. parametre dizi elemanının değerini, ikinci parametre dizi elemanlarının index numaralarını ve üçüncü parametre ise dizinin kendisini tutar. Birinci parametre zorunlu, iki ve üçüncü parametreler isteğe bağlıdır. Örneğin bir tane sayısal dizi oluşturalım ve bu dizi elemanlarından 10’dan küçük olan var mı diye bakalım.
const sayilar = [12, 23, 43, 21, 65, 43, 56, 23, 111, 87, 56, 99];
const ondanKucukVarMi = sayilar.some(function(x) {
return x < 10;
});
Fonksiyon Yapısı
some() fonksiyonunun arka planında aslında bir döngü dönmekte ve bu döngü her bir adımda o anki dizi elemanının callback fonksiyonu sağlayıp sağlamadığını kontrol ediyor ve eğer sağlamıyorsa döngüye devam ediyor, sağlıyorsa da geriye false döndürülüyor ve fonksiyondan çıkılıyor. Yazdığımız kodda ise her bir dizi elemanının 10’dan küçük olup olmadığına bakılıyor ve hiçbir eleman 10’dan küçük değilse geriye false döndürülüyor. Sayılardan bir tanesi bile 10’dan küçük olsaydı some() fonksiyonu geriye true döndürecekti.
İki ve üç parametreli kullanımı çok az tercih edilmekte. Çünkü zaten birinci parametrede dizi elemanına erişebiliyorken ayrıca diziye ve index numarasına ihtiyacımız olmayabiliyor fakat az bir ihtimalde olsa iki ve üç parametreli hali de kullanılabilmektedir. Örneğin 3 parametreli kullanımı ile az önce kodu tekrar yazalım;
const sayilar = [12, 23, 43, 21, 65, 43, 56, 23, 111, 87, 56, 99];
const ondanKucukVarMi = sayilar.some(function(x, index, dizi) {
return dizi[index] < 10;
});
Arrow Fonksiyon İle Kullanımı
Ayrıca some() fonksiyonu içerisine parametre olarak göndereceğimiz callback fonksiyonu arrow fonksiyonda olabiliyor. Aslında bu some() fonksiyonunun özelliği değil, EcmaScript standartlarıyla ilgili bir durum fakat yine de belirtmek istedim 🙂 Örneğin iki örneğimizi arrow fonksiyon kullanarak tekrardan yazalım;
const sayilar = [12, 23, 43, 21, 65, 43, 56, 23, 111, 87, 56, 99];
const ondanKucukVarMi1 = sayilar.some(x => x < 10);
const ondanKucukVarMi2 = sayilar.some((x, index, dizi) => dizi[index] < 10);
Burada yazmış olduğumuz ondanKucukVarMi1 ve ondanKucukVarMi2 değişkenlerinin değerlerinin aynı olduğunu görebilirsiniz. some() fonksiyonu Javascript fonksiyonlarından olduğu için Node.JS’de de aynı şekilde kullanabilirsiniz. Evet Javascript’te some() fonksiyonu bu şekilde kullanılmakta. Tüm Javascript yazılarımıza buraya tıklayarak ulaşabilirsiniz. Herkese hayırlı günler.