miz
Version:
Generate mock data, just like a person.
60 lines (59 loc) • 1.41 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.randomString = exports.randomChar = exports.randomBool = exports.randomFloat = void 0;
var CHARS = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_$';
/**
* 四舍五入一个数字,可以指定小数位
* @param number
* @param fixed
* @returns {number}
*/
function round(number, fixed) {
var t = Math.pow(10, fixed);
return Math.round(number * t) / t;
}
/**
* random a number.
* @param min
* @param max
* @param fixed
* @returns {*}
*/
function randomFloat(min, max, fixed) {
if (fixed === void 0) { fixed = 0; }
if (min > max) {
// swap them with xor
min = min ^ max;
max = min ^ max;
min = min ^ max;
}
return round(Math.random() * (max - min) + min, fixed);
}
exports.randomFloat = randomFloat;
/**
* random boolean.
* @returns {boolean}
*/
function randomBool() {
return !!randomFloat(0, 1);
}
exports.randomBool = randomBool;
/**
* random a char.
* @returns {*}
*/
function randomChar() {
return CHARS[randomFloat(0, CHARS.length - 1)];
}
exports.randomChar = randomChar;
/**
* random a string.
* @param len
* @returns {string}
*/
function randomString(len) {
if (len < 0)
len = 0;
return new Array(len).fill(0).map(function () { return randomChar(); }).join('');
}
exports.randomString = randomString;