JavaScript'te iki sayı arasında rastgele sayı üretme

JavaScript'te belirli bir aralıkta (örneğin 1'den 6'ya kadar: 1, 2, 3, 4, 5 veya 6) rastgele bir sayı oluşturmanın bir yolu var mı?

function randomIntFromInterval(min, max) { // min and max included 
  return Math.floor(Math.random() * (max - min + 1) + min);
}

Yaptığı şey "extra" 1 ile başlamayan rastgele aralıklara izin vermesidir. Böylece örneğin 10'dan 15'e kadar rastgele bir sayı elde edebilirsiniz. Esneklik.

Yorumlar (17)
Çözüm

Önemli

Aşağıdaki kod yalnızca minimum değer `1` ise çalışır. 1` dışındaki minimum değerler için çalışmaz.

Eğer 1 (ve sadece 1) ile 6 arasında rastgele bir tamsayı elde etmek isteseydiniz, hesaplama yapardınız:

Math.floor(Math.random() * 6) + 1  

Nerede?

  • 1 başlangıç numarasıdır
  • 6 olası sonuç sayısıdır (1 + başlangıç (6) - bitiş (1))
Yorumlar (29)
var x = 6; // can be any number
var rand = Math.floor(Math.random()*x) + 1;
Yorumlar (5)