Javascript array işlemleri için yardımcı olabilecek ipuçları

Javascript array işlemleri, bu makalede Javascript’de en sık kullanılan türlerinden biri olan Array üzerinden sizlere yardımcı olabilecek farklı ipuçlarını güncel olarak bu makalede paylaşıyor olacağım. Böylelikle Array üzerinde yapmak istediklerini az kod ile yapmış olacaksınız.

Javascript array işlemleri için yardımcı olabilecek ipuçları

Javascript array işlemleri için yardımcı olabilecek ipuçları

Mükerrer Kayıtları Temizlemek

En sık yapılan işlemlerden biri array içerisindeki mükerrer kayıtları temizlemek olduğunu düşünüyorum bu durum mülakatlarda dahi sorulan sorulardan biri olabiliyor mükerrer kayıtları temizlemek için her bir developerdan onlarca farklı cevap alabiliriz eğer EcmaScript’in son güncellemelerini takip etmiyor iseniz muhtemelen en sık verilen cevaplar for ile dönüp yeni bir array seti oluşturmak olacaktır diye düşünüyorum ama tek satırda mükerrer kayıtları temizleyebilirsiniz nasıl mı? işte böyle 👇

Üstteki kod bloğunda her iki metodda kullandığımız Set nesnesinin özelliği içerisinde sadece benzersiz değerleri saklamaktadır bundan dolayı meyveler adından array nesnemizi Set nesnesine verdiğimizde birden fazla geçen array içerisindeki elemanlardan birer tane alarak temizlenmesi sağlanmıştır benzersizMeyveler2 metodumuzda Array.from()’dan farklı olarak spread(…) operatörü kullanılmıştır. Array.from ve spread operatörün kullanılma sebebi new Set() ile iterator object nesnesi oluşturulmuş oluyor bundan dolayı iterator object nesnesinin array’e dönüştürülmesi için Array.from() veya spread operatörü kullanmalısınız.


Array içerisinden kayıt değiştirmek

Üstteki örnekte bahsedildiği gibi çok farklı yöntemler ile array içerisinde belirli bir indisdeki kaydın farklı kayıtlar ile değiştirilmesi mümkün fakat yine tek satırda splice fonksiyonunu kullanarak kayıt değiştirme işlemi yapabilirsiniz. splice metodu genellikle internetten array içerisinde belirli indisdeki kaydı nasıl silerim dediğinizde karşınızda çıkan örnek kod bloklarında karşılaşacağınız fonksiyondur normalde silmek için 1. ve 2. parametreler kullanılmaktadır fakat 3. ve sonrasındaki tüm parametreler silinme işlemi yapılan yere eklemek istediğiniz kayıtları temsil etmektedir alttaki örnek üzerinden konuşacak olursak 0.indisden 2 kayıt silip silinen bu kayıtların yerine yani muz ve elma’yı silip kiraz ve vişnenin eklenmesini sağlıyoruz.


Array içerisinden belirli bir kısmı alma işlemini .map() kullanmadan yapmak

Herkesin javascript’de ortak olarak aşina olduğu array fonksiyonlarından biri kesinlikle .map() fonksiyonudur her bir array elemanı üzerinde çeşitli işlemler yapıp geriye yeni bir Array döndürülmesi sağlanmaktadır Array.from fonksiyonunun 2.parametresinden map işlemi kolaylıkla yapılabilmektedir altta görebileceğiniz gibi tek satırda yine işlemi gerçekleştirebiliyoruz.


Array temizleme

Array içeriğini tamamen boşaltmak için normalde degiskenAdi = [] şeklinde bir kod bloğu kullanırız ama array nesnesinin length özelliği 0 olarak ayarlarsanız array içeriğini yeni bir array set etmeden temizlemiş olursunuz örnek olarak alttaki kod bloğunda olduğu gibi.


Array nesnesini obje’ye dönüştürmek

Array nesnesini objeye dönüştürmek için her derde deva olarak gördüğüm spread operatörünü buradada kullanıyor olacağız 🙂 Alttaki kod bloğunda göreceğiniz üzere obje blokları arasında ...meyveler yazarak array’den objeye dönüşümünü hızlıca sağlamış oluyoruz.


Belirlediğimiz veri ile Array oluşturmak

10 kaydı olan ve bütün kayıtların verisi 1 olacak şekilde bir Array oluşturmak için new Array(10).fill('1') dememiz yetiyor.


Array’leri birleştirmek

Farklı array’leri tek bir array içerisinde birleştirmek isterseniz herhalde en bilindik yollardan olan .concat() yada .push() yöntemlerinden biri aklınıza gelir diye düşünüyorum. Şaşıracaksınız biliyorum ama yine spread operatörünü kullanarak istediğimiz sayıda array nesnesini yine tek satırda birleştirebiliriz. Alttaki örnektede göreceğiniz üzere 3 farklı array nesnesini tek array’de birleştirdik.


İki array arasında kesişen değerleri bulmak

Yine mülakat sorularına aday bir örnek daha bu örnekte 2 farklı array nesnesi içerisinde kesişen değerleri bulan ve bu kesişen değerlerden oluşan verilerin listesini tek satırda istesek nasıl bir yol izlersiniz 🙂 tek satır demeseydim yine gidilebilecek onlarca farklı yol olduğunun farkındayım ama tek satır diyerek dikkati bu konuya çekmek istedim peki tek satırda bu işlemi nasıl yacağız hemen örnekte görelim.


Falsy değerlerine sahip array elemanlarının silinmesi

Örnek öncesinde Falsy değerlerinin ne olduğuna bir göz atalım javascript’de false, 0, ,'', null, NaN, undefined gibi değerler falsy değerlerdir. Peki yine tek satırda bu falsy değerleri array’imiz içerisinden bulup nasıl temizleyebiliriz? Çok basit array.filter(Boolean) kodu ile falsy değerlerinin temizlenmesiyle yeni bir array dizisini elde etmiş oluyoruz. Hemen örneğe ve sonucuna bakalım o zaman.


Array içerisinden rastgele değer getirmek

Array içerisinden rastgele değer getirmek için basitçe Math.random ve array.length değerlerinden faydalanıp çıkan değer ile eşleşen array indisindeki değere ulaşmış olacağız.


Array değerlerinin dizilimini tersine çevirmek

Kısacası array değerlerinden baştakini sona, sondakini başa atacak şekilde değiştireceğiz. Yıllardır kullandığımız yöntemi kullanacağım, burada yeni bir şey ile bari bu geleneği bozmayalım 🙂 Sizinde tahmin edeceğiniz üzere reverse() adlı fonksiyonu kullanarak değerlerin dizilimini tersine çevireceğiz.


lastIndexOf Metodu Kullanım Amacı

Normalde arama işlemleri için sıklıkla indexOf metodunu kullanırız ama aynı değere birden fazla sahip olduğu durumlarda ve bizim ihtiyacımız aynı değerin en son kısımda yer alan değere ait indis değeri ise o zaman indexOf yerine lastIndexOf kullanmamız gerekiyor çünkü indexOf eşleşen ilk değerin indisini verir ama lastIndexOf son eşleşmeye ait değerin indisini verir altta göreceğiniz üzere 1.indisde 5 olmasına rağmen bize 5 değerinin en son eşleştiğini 9 indisini verdi neden? çünkü lastIndexOf kullandık.


Array içerisindeki tüm değerlerin toplamını almak

Eğer array içerisinde yer alan sayısal değerleriniz toplamını alan bir kod bloğu arıyorsanız reduce() fonksiyonunu kullanmalısınız altta görebileceğiniz gibi reduce adlı fonksiyonun 2 parametresi mevcut. İlk parametresi her bir eleman üzerinden yaptığı toplama işlemini bir sonraki eleman için hafızasında tutan toplam değişkenidir. İkinci parametre ise aktif array elemanını vermektedir yani kendi içinde bir döngü ile her bir elamanı size ikinci parametrede sunuyor ve bir önceki döngüde yaptığını işlemin sonucunuda size ilk parametrede vermiş oluyor.



📚 Diğer Javascript Makaleleri


📚 Kaynaklar


✍ Lütfen olumlu-olumsuz tüm görüşlerinizi “Javascript array işlemleri” konulu makale için bana yorum yada mail yolu ile iletmeyi ihmal etmeyin.

🔗 Sosyal medya kanallarından “Javascript array işlemleri” konulu makaleyi paylaşarak destek olursanız çok sevinirim.

👋 Bir sonraki makalede görüşmek dileğiyle.

Bunlar da hoşunuza gidebilir...

2 Cevaplar

  1. Sercan dedi ki:

    Murat bey. Güzel bir makale olmuş

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir