javascript - Faker.js 两个值之间的随机数

标签 javascript faker

这个让我有点生气,我确信它很简单,但似乎没有任何地方记录。

我正在使用 Faker.js和以下生成我的随机数:

faker.random.number();

效果很好,现在如果我想在 2 个数字之间进行,我该怎么做?

我尝试了以下方法:

faker.random.number(10, 50);

但是,这只是给我从 010 的数字。不知道 50 在做什么。

谁能给我一些指示。

最佳答案

你需要给函数一个对象:

faker.datatype.number({
    'min': 10,
    'max': 50
});

因此,如果您只传递一个数字,它会将其设置为最大值。最小值默认为 0。

这是数字函数的实现:

this.number = function (options) {

    if (typeof options === "number") {
      options = {
        max: options
      };
    }

    options = options || {};

    if (typeof options.min === "undefined") {
      options.min = 0;
    }

    if (typeof options.max === "undefined") {
      options.max = 99999;
    }
    if (typeof options.precision === "undefined") {
      options.precision = 1;
    }

    // Make the range inclusive of the max value
    var max = options.max;
    if (max >= 0) {
      max += options.precision;
    }

    var randomNumber = options.precision * Math.floor(
      mersenne.rand(max / options.precision, options.min / options.precision));

    return randomNumber;

  }

更新

最新版本将函数的位置从 faker.random.number 更改为 faker.datatype.numberhttps://github.com/Marak/faker.js/issues/1156

关于javascript - Faker.js 两个值之间的随机数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32010910/

相关文章:

ruby-on-rails - 使用 Faker gem 生成相关的城市、邮政编码、国家代码值

javascript - DataTables 如何获取单击的行和第一列的值?

javascript - 如何让后面的 Promise 等待第一个 Promise 在 bluebird 中完成?

javascript - 无法设置新的 Faker 库

Laravel 7 模型工厂为 faker 抛出 "InvalidArgumentException: Unknown formatter"异常

php - Laravel Faker - create 和 make 有什么区别

javascript - JQuery 和 HTML 从表格的每个第一个 <tr> 中获取 <td> 的值以递增它

javascript - 我正确处理 SVG 了吗?

javascript - 如何将数组中的每个数字除以 JavaScript 中的变量?

python - Pytest 和 Faker |在每次测试中使用相同的数据