JavaScript’te, Dizilerdeki öğeleri bulmanın birçok yararlı yolu vardır. Her zaman döngüye temel için başvurabilirsiniz, ancak ES6+ ile dizi üzerinde döngü ve kolayca ihtiyacınız olanı bulmak için birçok yöntem vardır.
Pek çok farklı yöntemle hangisini ve hangi durumda kullanıyorsunuz? Örneğin, bir dizide arama yaparken, öğenin dizide olup olmadığını bilmek ister misiniz? Öğenin dizinine mi yoksa öğenin kendisine mi ihtiyacınız var?
Ele alacağımız her farklı yöntemle, bunların hepsinin Array.prototype’de yerleşik yöntemler olduğunu anlamak önemlidir. Bu, onları nokta gösterimiyle herhangi bir diziye zincirlemeniz gerektiği anlamına gelir. Bu aynı zamanda, bu yöntemlerin nesnelerde veya Diziler dışında herhangi bir şeyde mevcut olmadığı anlamına gelir (Dizelerle çakışma olsa da).
Aşağıdaki Dizi yöntemlerine bakacağız:
JavaScript .includes()
.includes() yöntemi bir boolean değeri döndürür ve bir öğenin dizide olup olmadığını söylemek için mükemmeldir. Basit bir true ya da false cevap verir.
1 2 3 4 5 6 | var dizi=["Hüseyin","Ahmet","Hayri","Recep","Ufuk"]; var aranan="Hayri"; var sonuc=dizi.includes(aranan); alert(sonuc); |
JavaScript find()
.find(), include() yönteminden ne kadar farklıdır? Örneğimizde “includes” metnini yalnızca “find” olarak değiştirirsek hata alırız. find bir işlev almaktadır. dizi içinde arama işlemi yapmaktadır. Sayılardan oluşan bir dizimiz olduğunu düşünelim. Bu dizideki ilk 5in katı olan sayıyı döndürmek istiyoruz. find ile bunu rahatlıkla yapabiliriz.
1 2 3 4 5 6 7 | var dizi=[12,14,15,18,20,45]; var sonuc=dizi.find(element=>{ return element%5==0; }); alert(sonuc); |
JavaScript indexOf kullanımı
.includes() yöntemi gibi, .indexOf() da, .find() yöntemiyle gördüğümüz gibi bir işlev değil, sıkı karşılaştırma kullanır. Ancak, include() öğesinin aksine, bir boolean yerine öğenin dizinini döndürür. Ayrıca dizideki hangi dizinin aramaya başlayacağını da belirtebilirsiniz.
1 2 3 4 5 | var dizi=[12,14,15,18,20,45]; var sonuc=dizi.indexOf(14); alert("14 sayısının index sırası"+sonuc); |
1 Yorum