'a'
mh-two-thousand-and-two
2024-04-12 44d2c92345cd156a59fc327b3060292a282d2893
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
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;