Javascript arrayden rastgele değer nasıl çekilir

Bu yazıda javascript içinde bir array’den rastgele bir değer nasıl seçilir bunu gösterdim

Rastgele sayı üreterek değer çekme

Diyelim ki elimizde aşağıdaki gibi bir listemiz var ve içinden rastgele bir değeri çekmek istiyoruz. Sıfırdan listenin uzunluğuna kadar bir rastgele tam sayı oluşturarak bunu yapabiliriz. Bunun için Math.random methodundan yardım alacağız.

let liste = [1,24,56,333,5,9009,111,4,125,634634,3643,1111,433]
let rastgeleDeger = liste[Math.floor(Math.random()*liste.length)];

Yukarda listenin indexi için önce 0,1 arasında rastgele bir float oluşturduk. Ardından bunu listenin uzunluğu ile çarptık ve tam sayı olması için Math.floor methodunu kullandık. Böylece listeden rastgele bir sayı çektik.

Daha pratik yol : Prototypes!

Üstteki örnekte gördüğünüz gibi her array için bunu yazmak sıkıcı olabilir. Bunun yerine javascriptin harika özelliği olan prototype özelliğinden faydalanarak rastgele sayı çekmek mümkün.

Prototype özelliği JS’de objelere yeni özellikler eklemenizi sağlar. Biz ise projede tüm arraylerde kullanılabilecek .random fonksiyonu ekleyeceğiz.

Öncelikle aşağıdaki kod satırını projenizin üstüne yazıyoruz ki arrayimize random methodu eklensin

Array.prototype.random = function () {
  return this[Math.floor((Math.random()*this.length))];
}

Bu kodu yazdıktan sonra JS’deki TÜM arrayler random methoduna sahip olacaktır. Aşağıdaki koddaki gibi herhangi bir array’e .random() yazarak içinden rastgele bir item döndürebiliriz.

liste.random()
[1,2,3].random()

Yorum bırakın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Scroll to Top