mirror of
https://github.com/gnh1201/welsonjs.git
synced 2025-02-11 17:34:58 +00:00
Update rand.js
This commit is contained in:
parent
862623eba4
commit
f0e5197e92
16
lib/rand.js
16
lib/rand.js
|
@ -77,15 +77,15 @@ function sample(arr, length) {
|
|||
return shuffle(arr).slice(0, length);
|
||||
}
|
||||
|
||||
function discardCallback(callback, filename) {
|
||||
function discardCallback(callback, args, filename) {
|
||||
if (typeof callback !== "function") return;
|
||||
|
||||
var discarded = splitLn(FILE.readFile(filename, "utf-8"));
|
||||
var chosen = callback();
|
||||
var chosen = callback.apply(null, args);
|
||||
|
||||
while (chosen == null || discarded.indexOf(chosen) > -1) {
|
||||
console.log("Chosen other item.");
|
||||
chosen = callback(arr);
|
||||
console.log("다른 항목을 찾습니다.");
|
||||
chosen = callback.apply(null, args);
|
||||
}
|
||||
|
||||
FILE.appendFile(filename, "\r\n" + chosen, "utf-8");
|
||||
|
@ -94,7 +94,13 @@ function discardCallback(callback, filename) {
|
|||
}
|
||||
|
||||
function discardOne(arr, filename) {
|
||||
return discardCallback(one, filename);
|
||||
var discarded = splitLn(FILE.readFile(filename, "utf-8"));
|
||||
var _arr = arr.reduce(function(a, x) {
|
||||
if (discarded.indexOf(x) < 0) a.push(x);
|
||||
return a;
|
||||
}, []);
|
||||
|
||||
return discardCallback(one, [_arr], filename);
|
||||
}
|
||||
|
||||
exports.randomize = randomize;
|
||||
|
|
Loading…
Reference in New Issue
Block a user