uni-ticket-system/node_modules/licia/sample.js

19 lines
519 B
JavaScript
Raw Normal View History

2023-12-05 02:11:10 +00:00
var isArrLike = require('./isArrLike');
var clone = require('./clone');
var values = require('./values');
var random = require('./random');
var swap = require('./swap');
exports = function(obj, n) {
var sample = isArrLike(obj) ? clone(obj) : values(obj);
var len = sample.length;
n = Math.max(Math.min(n, len), 0);
var last = len - 1;
for (var i = 0; i < n; i++) {
var rand = random(i, last);
swap(sample, i, rand);
}
return sample.slice(0, n);
};
module.exports = exports;