web-dev-qa-db-ja.com

2つの値の間のFaker.js乱数

これは私を少し怒らせています、確かにそれは単純ですが、どこにも文書化されていないようです。

私は https://github.com/marak/Faker.js/ と次を使用して乱数を生成します:

faker.random.number();

うまく機能しました。2つの数値の間で実行したい場合、どうすればよいですか?

私は以下を試しました:

faker.random.number(10, 50);

ただし、0から10までの数字が表示されます。50が何をしているかはわかりません。

誰か私にこれへのいくつかの指示をください

13
K20GH

あなたは関数にオブジェクトを与える必要があります:

faker.random.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;

  }
29
cre8

から Fakerjs github

Whole Number faker。random.number(min、max)0と「範囲」の間の乱数。

faker.random.number(100); //returns 92
faker.random.number({min:5, max:10}); //returns 9

10進数の偽物。finance.amount(min、max、decimal Places) "min "および" max "(小数を含むX桁)。

faker.finance.amount(9000,10000,4); //returns 9948.8363

ブールフェイカー。random.boolean()

faker.random.boolean(); //returns true

配列要素faker。random.arrayElement(array [])配列からランダム要素を選択します可能な値。この関数は、可能性のカスタムリストを作成するのに役立ちます。

faker.random.arrayElement(["one","two","three","four"]); //returns "two"
var phTyp = faker.random.arrayElement(["cell","work","home"]); //returns "work"

Object Element faker。random.objectElement(object {})オブジェクトからランダムな要素を選択し、キーではなく値を選択します。この関数は、可能性のカスタムリストを作成するのに役立ちます。

faker.random.objectElement({one: 1, two: 2, three: 3}); //returns 3
15
Craicerjack

以下のようなハッシュを渡してみてください

faker.random.number({ min: 10, max: 50})