Faker.js 2个值之间的随机数
Faker.js random number between 2 values
这个让我有点生气,我相信它很简单,但似乎没有任何地方记录。
我正在使用 Faker.js 和以下生成随机数:
faker.random.number();
效果很好,现在如果我想在 2 个数字之间进行,我该怎么做?
我尝试了以下方法:
faker.random.number(10, 50);
然而,这只是给我从 0
到 10
的数字。不知道 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.number
、https://github.com/Marak/faker.js/issues/1156
整数faker. random.number(min,max) 0到"range"之间的随机数。
faker.random.number(100); //returns 92
faker.random.number({min:5, max:10}); //returns 9
小数faker.finance.amount(min,max,小数位数)"min"之间的随机数"max" 包括小数到 X 位。
faker.finance.amount(9000,10000,4); //returns 9948.8363
Boolean faker. random.boolean()
faker.random.boolean(); //returns true
Array Element 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
尝试传递如下哈希值
faker.random.number({ min: 10, max: 50})
我在 运行 faker.random.number
应用程序 faker@5.5.3
中遇到此警告。
Deprecation Warning: faker.random.number is now located in
faker.datatype.number
方法已移动。更好的修复将替换为 faker.datatype.number()
.
faker.datatype.number(100); // return 88
faker.datatype.number({ min: 5, max: 10 }); // return 7
这个让我有点生气,我相信它很简单,但似乎没有任何地方记录。
我正在使用 Faker.js 和以下生成随机数:
faker.random.number();
效果很好,现在如果我想在 2 个数字之间进行,我该怎么做?
我尝试了以下方法:
faker.random.number(10, 50);
然而,这只是给我从 0
到 10
的数字。不知道 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.number
、https://github.com/Marak/faker.js/issues/1156
整数faker. random.number(min,max) 0到"range"之间的随机数。
faker.random.number(100); //returns 92
faker.random.number({min:5, max:10}); //returns 9
小数faker.finance.amount(min,max,小数位数)"min"之间的随机数"max" 包括小数到 X 位。
faker.finance.amount(9000,10000,4); //returns 9948.8363
Boolean faker. random.boolean()
faker.random.boolean(); //returns true
Array Element 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
尝试传递如下哈希值
faker.random.number({ min: 10, max: 50})
我在 运行 faker.random.number
应用程序 faker@5.5.3
中遇到此警告。
Deprecation Warning: faker.random.number is now located in faker.datatype.number
方法已移动。更好的修复将替换为 faker.datatype.number()
.
faker.datatype.number(100); // return 88
faker.datatype.number({ min: 5, max: 10 }); // return 7