Bir JavaScript Dizisinde Yinelenen Değerler Nasıl Kontrol Edilir?

by | Jan 28, 2023 | Genel | 0 comments

İçinde tekrar eden değerler bulunan bir dizi nasıl kontrol edilir? Bir JavaScript dizisindeki tekrar eden değerleri nasıl bulabilirsiniz?

İlk olarak, bir dizide yinelenen değerler olup olmadığını nasıl belirleyeceğimize bir göz atalım. Bunu yapmak için .includes() yöntemini kullanacağız. Bu metot iki parametre alır: birincisi aradığınız değer, ikincisi ise kontrol ettiğiniz dizidir. Eğer .includes() metodu true değerini döndürürse, bu değerin dizide bulunduğu anlamına gelir.

JavaScript’te Dizinin Kontrol Edilmesi

Diyelim ki bir dizi değeriniz var ve bunlardan herhangi birinin mükerrer olup olmadığını kontrol etmek istiyorsunuz. Bunu JavaScript’te nasıl yapabilirsiniz?

Bunun bir yolu Array.prototype.indexOf() yöntemini kullanmaktır. Bu yöntem girdi olarak bir değer alır ve bu değerin dizideki indeksini döndürür. Değer dizide bulunamazsa -1 değerini döndürür.

Bir dizide yinelenen değerler olup olmadığını kontrol etmek için bu yöntemi kullanabilirsiniz. Örneğin, aşağıdaki diziye sahip olduğunuzu varsayalım:

var meyveler = [‘elma’, ‘muz’, ‘elma’, ‘portakal’]

Değerlerden herhangi birinin yinelenen olup olmadığını kontrol etmek için indexOf() yöntemini kullanabilirsiniz. Örneğin, aşağıdaki kod dizinin yinelenen değerler içerip içermediğini kontrol eder:

if (fruits.indexOf(‘apple’) !== -1) { // Dizi en az bir yinelenen değer içeriyor }

Bir Dizide Yinelenen Elemanların Kontrol Edilmesi

Bir dizide yinelenen değerler olup olmadığını kontrol etmek için “contains” yöntemini kullanabilirsiniz. Diyelim ki bir sayı diziniz var ve bunlardan herhangi birinin çift olup olmadığını kontrol etmek istiyorsunuz. “contains” metodunu şu şekilde kullanabilirsiniz:

var dizi = [1,2,3,4,4];

console.log(array.contains(4)); // logs “true”

Bu, dizi herhangi bir yinelenen değer içeriyorsa “true” değerini döndürür. Yinelenen bir değerin ilk örneğinin nerede olduğunu bulmak için “indexOf” yöntemini de kullanabilirsiniz.

Yinelenen Değerleri Kaldırmak

Array.prototype.unique() yöntemini kullanarak bir dizideki yinelenen değerleri kaldırabilirsiniz. Bu, yalnızca benzersiz değerler içeren yeni bir dizi döndürecektir.

İşte bir örnek:

var myArray = [1, 2, 3, 1, 2, 3];

var uniqueArray = myArray.unique();

Bu, 1, 2 ve 3 değerlerini içeren yeni bir dizi oluşturacak ve 1 ve 2 kopyalarını kaldıracaktır.

Bir Diziyi Sıralamadan Önce Yineleni Değerlerin Kontrol Edilmesi

Bir sonraki adım olarak, diziyi sıralamadan önce yinelenen değerleri kontrol etmek için JavaScript’teki Set özelliğini kullanabilirsiniz. Bir set, eşsiz verileri depolar ve nesnelerin zaten tanımlanmasını sağlar. Bir diziyi bir Set’e içeren bir döngüyle dönüştürebilir ve döngünün içindeki değerlerin aralarında aynı olup olmadıklarını kontrol edebilirsiniz. Eğer aynı varsa, bu yinelenen bir değer olduğu anlamına gelir, bu nedenle bunu algılama fonksiyonuna geri gönderebilir ve uyarabilirsiniz.

Dizideki Yinelenen Değerleri Bulmak İçin Bir Çözüm Önerisi

Bir dizideki yinelenen değerleri kontrol etmek için bir çözüm arıyorsanız, en iyi seçenek ‘Set()’ yöntemini kullanmaktır. Bu yöntem bir diziyi alır ve yalnızca benzersiz değerleri döndürür; bu değerler daha sonra orijinal diziyle karşılaştırılabilir.

Başlamak için önce yeni bir Set oluşturun ve kontrol etmek istediğiniz diziyi girin. Ardından, orijinal dizinin her bir değerini Set’in değerleriyle karşılaştırmak için ‘has()’ yöntemini kullanın. Bir değer orijinal dizinizde birden fazla görünüyorsa, Set’te yalnızca bir kez bulunacaktır, böylece bir kopyaya sahip olduğunuzu anlayacaksınız!

Örneğin, bir [3, 4, 5, 6, 3] dizimiz varsa, önce bunu [3,4,5,6]’ya dönüştürmek için ‘Set()’ kullanabilir, ardından ‘has()’ kullanarak yinelenenleri kontrol edebiliriz. Orijinal dizide birden fazla görünen herhangi bir değer için true döndürürse, o zaman bir kopya olduğunu bilirsiniz!

Özetle

Kısacası, bir dizide yinelenen değerler olup olmadığını kontrol etmek istiyorsanız, Array.prototype.contains() yöntemini kullanabilirsiniz. Bu metot girdi olarak bir değer alır ve değer dizide mevcutsa true, değilse false döndürür.