Computer >> Máy Tính >  >> Lập trình >> Javascript

Tạo n số ngẫu nhiên giữa một dải ô - JavaScript

Chúng tôi được yêu cầu viết một hàm JavaScript nhận vào một số, chẳng hạn như n, và một mảng hai số đại diện cho một phạm vi. Hàm phải trả về một mảng gồm n phần tử ngẫu nhiên, tất cả đều nằm giữa phạm vi được cung cấp bởi đối số thứ hai.

Ví dụ

Sau đây là mã -

const num = 10;
const range = [5, 15];
const randomBetween = (a, b) => {
   return ((Math.random() * (b - a)) + a).toFixed(2);
};
const randomBetweenRange = (num, range) => {
   const res = [];
   for(let i = 0; i < num; ){
      const random = randomBetween(range[0], range[1]);
      if(!res.includes(random)){
         res.push(random);
         i++;
      };
   };
   return res;
};
console.log(randomBetweenRange(num, range));

Đầu ra

Điều này sẽ tạo ra kết quả sau trong bảng điều khiển -

[
   '13.25', '10.31',
   '11.83', '5.25',
   '6.28',  '9.99',
   '6.09',  '7.58',
   '12.64', '8.92'
]

Đây chỉ là một trong nhiều kết quả khả thi.

Hãy để chúng tôi chạy lại để nhận được một kết quả ngẫu nhiên khác -

[
   '5.29', '7.95',
   '11.61', '7.83',
   '10.56',  '7.48',
   '12.96',  '6.92',
   '8.98', '9.43'
]