面试题:用 js 实现随机选取 10–100 之间的 10 个数字,存入一个数组并排序(必会)

711 阅读1分钟

获取随机数公式

    Math.random() * (max - min) + min

js向上取整,向下取整,四舍五入,取绝对值等函数

1.向上取整。正数:有小数,舍弃小数,整数就加1。负数:就舍弃小数部分,取整数部分

 

    Math.ceil();

2.向下取整。正数:舍弃小数,只要整数部分。负数:有小数,舍弃小数,整数减1

    Math.floor();

3.取绝对值。正数就是本身,负数取反

    Math.abs();

4.四舍五入。正数:第一位小数大于5,则整数加1,反之取整数。负数:第一位小数大于5,则取整数,反之整数减1

 Math.round()

随机选取 10–100 之间的 10 个数字,存入一个数组并排序

    let arr = [];
    for (let i = 0; i < 10; i++) {
      arr.push(Math.floor(Math.random() * 90 + 10))
    }
    arr.sort()
    console.log(arr);

封装一个函数,返回一个数组,数组中的元素是随机生成的 n 个数字,并且排序

    function random (min, max, n) {
      let arr = [];
      for (let i = 0; i < n; i++) {
        arr.push(Math.floor(Math.random() * (max - min) + min));
      }
      arr.sort((a, b) => a - b);
      return arr;
    }
    console.log(random(1, 9, 4));