Javascript’teki array fonksiyonlarına bu yazımızda .some() array fonksiyonu ile devam ediyoruz.
Javascript .some() array fonksiyonu nedir sorusuna en basit şekilde şöyle cevap verebiliriz: bir array içerisinde belirtilen koşullara uygun bir eleman varsa, sonucumuz true dönecektir. Eğer yoksa da false değeri dönecektir. İşte bu kadar basit.
.some() fonksiyonu; filter() fonksiyonu gibi bize bir array dönmez ya da .find() fonksiyonu gibi bir elemanı dönmez. Sadece dizi içerisinde istenilen özelliklere sahip bir eleman var mı yok mu onun sonucunu döner. Yani sonucu sadece true ya da false olacaktır.
Haydi basit bir örnek ile .some() fonksiyonunun kullanımını pekiştirelim.
Javascript .some() Fonksiyonu Örneği
Sonuçları console.log ile değil de document.getElementById() ile ekrana yazdıracağız.
Kodlarımızın HTML kısmı şu şekilde olacak:
<h3>Listemizde Balıkesirli var mı?</h3>
<div id="sonuc1"></div>
<hr />
<h3>Listemizde İstanbullu var mı?</h3>
<div id="sonuc2"></div>
<hr />
<h3>18 yaşından küçük kimse var mı?</h3>
<div id="sonuc3"></div>
<hr />
<h3>100 kilodan fazla olan kimse var mı?</h3>
<div id="sonuc4"></div>
Javascript kodlarımız ise şu şekilde:
const kisiler =
[
{"isim": "Mustafa Çağrı Güven", "yas": 33, "sehir": "Ankara", "boy": 188, "kilo": 88, "cinsiyet": "erkek", "gozRengi": "kahve"},
{"isim": "Ahmet Güven", "yas": 83, "sehir": "Balıkesir", "boy": 162, "kilo": 80, "cinsiyet": "erkek", "gozRengi": "siyah"},
{"isim": "Ali Güven", "yas": 92, "sehir": "Balıkesir", "boy": 182, "kilo": 90, "cinsiyet": "erkek", "gozRengi": "ela"},
{"isim": "Emine Güven", "yas": 83, "sehir": "Balıkesir", "boy": 172, "kilo": 70, "cinsiyet": "kadın", "gozRengi": "ela"},
{"isim": "Afra Güven", "yas": 8, "sehir": "Dursunbey", "boy": 122, "kilo": 24, "cinsiyet": "kadın", "gozRengi": "kahve"},
{"isim": "Eslem Güven", "yas": 14, "sehir": "Dursunbey", "boy": 152, "kilo": 41, "cinsiyet": "kadın", "gozRengi": "yeşil"}
]
const balikesirli = kisiler.some( kisi => kisi.sehir === 'Balıkesir')
document.getElementById("sonuc1").innerText = balikesirli
const istanbullu = kisiler.some( kisi => kisi.sehir === 'İstanbul')
document.getElementById("sonuc2").innerText = istanbullu
const kilo100 = kisiler.some( kisi => kisi.kilo > 100)
document.getElementById("sonuc4").innerText = kilo100
İşte bu kadar basit. JsFiddle’da da canlı olarak şu şekilde görebilirsiniz:
Projenin tamamına https://github.com/mustafacagri/javascript-array-functions adresinden de ulaşabilirsiniz. Vakit buldukta diğer fonksiyonları ve örnekleri de eklemeye devam ediyorum. Eğer siz de repoya katkıda bulunmak isterseniz, lütfen Pull Request atmaktan çekinmeyin.
Bir sonraki yazıda görüşmek üzere.