@onesy/utils
Version:
23 lines (22 loc) • 994 B
JavaScript
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const is_1 = __importDefault(require("./is"));
const random_1 = __importDefault(require("./random"));
const shuffle = (value, toShuffle = 14) => {
if ((0, is_1.default)('array', value) || (0, is_1.default)('string', value)) {
const array = (0, is_1.default)('array', value) ? value : value.split('');
for (let i = 1; i < toShuffle; i++) {
const indexA = (0, random_1.default)(0, array.length - 1);
const indexB = (0, random_1.default)(0, array.length - 1);
const valueA = array[indexA];
const valueB = array[indexB];
array[indexA] = valueB;
array[indexB] = valueA;
}
return (0, is_1.default)('array', value) ? value : array.join('');
}
};
exports.default = shuffle;
;