İçindeki Değerine Göre Bir Diziden Nesneyi Kaldırma

Icindeki Degerine Gore Bir Diziden Nesneyi Kaldirma



Verilerle toplu olarak ilgilenirken, bir güncelleme nedeniyle bazı girişlerin kaldırılması gerekliliği olabilir. Örneğin, belirli bir öznitelik veya özelliğe dayalı değerlerin kaldırılması. Bu, ilgili verilere kolayca erişilmesini ve istenmeyen girişlerin silinmesini sağlar. Bu gibi durumlarda bir diziden bir nesneyi JavaScript'teki değerine göre kaldırmak, verilere anında erişmek ve hafızadan tasarruf etmek için çok yardımcı olur.

Bu makale, JavaScript'teki değerine göre bir diziden bir nesneyi kaldırma yaklaşımlarını tartışacaktır.







Bir Nesneyi JavaScript'teki Değerine Göre Bir Diziden Kaldırma/Eleme Nasıl Yapılır?

Bir dizideki bir nesneyi JavaScript'teki değerine göre ortadan kaldırmak için aşağıdaki yaklaşımları uygulayın:



Belirtilen yaklaşımların her birini tek tek tartışalım!



Yaklaşım 1: FindIndex() ve splice() Yöntemlerini Kullanarak Bir Nesneyi JavaScript'teki Değerine Göre Bir Diziden Kaldırma

findIndex() ” yöntemi, orijinal dizide herhangi bir değişiklik yapmadan öğenin dizinini (konumunu) döndürür. “ ekleme() ” yöntemi, belirli dizi öğelerini ekler/kaldırır ve orijinal diziyi de etkiler. Bu yöntemler, nesnenin kaldırılması gereken dizinini bulmak için kullanılabilir. Bundan sonra, belirli nesne belirtilen sayıya göre eklenir.





Sözdizimi

dizi.findIndex ( işlev ( currVal, indeks, dizi ) , değer )



Bu söz diziminde:

  • işlev ”, bir dizideki her öğe için çağrılması gereken işlevi ifade eder.
  • İşlev parametreleri, belirtilen dizideki geçerli değerin dizinine başvurur.
  • değer ”, fonksiyona “ olarak iletilmesi gereken değeri gösterir. Bu ”.

dizi.ek yeri ( dizin, sayı, yeni )

Yukarıda verilen söz diziminde:

  • dizin ”, öğelerin eklenmesi veya çıkarılması gereken konumu işaret eder.
  • birde ” öğenin numarasını temsil eder.
  • yeni yerine geçen yeni öğelere karşılık gelir.

Örnek

Aşağıda belirtilen kodu takip edelim:

< senaryo tip = 'metin/javascript' >
İzin Vermek verilen dizi = [ { yaş: 18 } , { yaş: yirmi } , { yaş: 25 } ] ;
İzin Vermek removeObject = veriliArray.findIndex ( nesne = > {
dönüş nesne.yaş === 18 ;
} ) ;
konsol.log ( 'Kaldırılacak nesnenin dizini:' , Nesneyi kaldır ) ;
verilenArray.splice ( kaldırNesne, 1 ) ;
konsol.log ( 'Nesneyi değere göre çıkardıktan sonra dizi şu hale gelir:' , verilen dizi ) ;
senaryo >

Yukarıdaki kod parçacığında:

  • Belirtilen özelliklere sahip bir nesne dizisi bildirin.
  • Bir sonraki adımda, ' findIndex() ” önceki adımda bildirilen dizi ile yöntemi.
  • Bu, bir dizideki her öğenin (nesnenin) yinelenmesine yol açacaktır.
  • Sonuç olarak, dizideki belirli bir nesnenin dizini, özellikle belirtilen değerle, yani 18 ile eşleşen görüntülenecektir.
  • Bundan sonra, “ ekleme() ” yöntemi, belirli bir nesneyi bu dizine karşı kaldıracak olan getirilen dizine atıfta bulunur.
  • Dikkat ' 1 ”, kaldırılması gereken nesne sayısını belirtir.
  • Son olarak, ortaya çıkan nesnenin dizisini görüntüleyin.

Çıktı

Yukarıdaki çıktıda, belirli bir nesnenin indeksinin görüntülendiği ve daha sonra kaldırıldığı görülebilir.

Yaklaşım 2: filter() Yöntemini Kullanarak Bir Nesneyi JavaScript'teki Değerine Göre Bir Diziden Kaldırma

filtre() ” yöntemi, belirli bir testi geçen yeni bir öğe dizisi oluşturur. Bu yöntem, karşılaştırma operatörü aracılığıyla bir koşula göre kaldırılması gereken nesneyi filtrelemek için uygulanabilir.

Sözdizimi

dizi.filtre ( işlev ( val ) , Bu )

Burada:

  • işlev ”, filtreleme için işleve yönlendirecek işlevi işaret eder.
  • val ”, geçerli öğenin değeridir.
  • Bu ”, işleve iletilen değeri gösterir.

Örnek

Aşağıda belirtilen örneği gözden geçirelim:

< senaryo tip = 'metin/javascript' >
İzin Vermek verilen dizi = [ { boyut: 35 } , { boyut: 40 } , { boyut: Dört beş } ] ;
konsol.log ( 'Verilen dizi:' , verilen dizi )
İzin Vermek yeniDizi = verilenArray.filter ( nesne = > {
dönüş nesne.size ! == Dört beş ;
} ) ;
konsol.log ( 'Nesneyi değere göre çıkardıktan sonra dizi şu hale gelir:' , yeni Dizi ) ;
senaryo >

Yukarıdaki kod satırlarında verilen aşağıdaki adımları uygulayın:

  • Aynı şekilde, bir dizi nesne bildirin ve görüntüleyin.
  • Bundan sonra, “ filtre() ” yöntemi, elemanlara (nesnelere) atıfta bulunarak.
  • Şimdi, ilişkili diziyi, ' aracılığıyla sağlanan koşula dayalı olarak yeni bir dizi oluşturulacak şekilde filtreleyin. eşit değil(!==) ” karşılaştırma operatörü.
  • Son olarak, filtrelenmiş diziyi görüntüleyin.

Çıktı

Yukarıdaki çıktı, yeni filtrelenmiş nesne dizisinin oluşturulduğunu gösterir.

Yaklaşım 3: pop() Yöntemini Kullanarak Bir Nesneyi JavaScript'teki Değerine Göre Bir Diziden Kaldırma

pop() ” yöntemi, bir dizideki son öğeyi ortadan kaldırır ve orijinal diziyi de etkiler. Bu yöntem, diziden belirli bir nesneyi çıkarmak için kullanılabilir ve kaldırılan nesneyle güncellenmiş bir dizi oluşturur.

Örnek

Aşağıda verilen örnek, tartışılan kavramı göstermektedir:

< senaryo tip = 'metin/javascript' >
İzin Vermek verilen dizi = [ { isim: 'Harry' } , { isim: 'Davut' } ]
İzin Vermek yeniArray = verilenArray.pop ( nesne = > {
dönüş nesne.adı = 'Harry'
} )
konsol.log ( 'Nesneyi değere göre çıkardıktan sonra dizi şu hale gelir:' , yeni Dizi ) ;
senaryo >

Yukarıdaki kod parçacığında:

  • Benzer şekilde, belirtilen özelliklere sahip bir dizi nesne bildirin.
  • Bir sonraki adımda, “ pop() 'özelliğe karşı belirtilen değere sahip belirli bir nesneyi kaldırma yöntemi' isim ”.
  • Sonuç olarak, ortaya çıkan dizide yalnızca bir nesne kalacaktır ' yeniArr ”.
  • Son olarak, güncellenen nesnenin dizisini, yani newArr'ı görüntüleyin.

Çıktı

Yukarıdaki çıktı, istenen gereksinimin karşılandığını gösterir.

Çözüm

findIndex() ' ve ' ekleme() ' yöntemler, ' filtre() ” yöntemi veya “ pop() ” yöntemi, JavaScript'teki değerine göre bir diziden bir nesneyi kaldırmak için uygulanabilir. Bu yaklaşımlar, belirli bir nesneyi indekslemeye, eşit olmayan(!==) işleci aracılığıyla filtrelemeye veya sırasıyla bir koşula göre patlatmaya dayalı olarak kaldırır. Bu makale, JavaScript kullanarak bir dizideki bir nesneyi değerine göre kaldırmaya/ortadan kaldırmaya yönelik yaklaşımları açıkladı.