DataLoader
by Artem
JavaScript
'use strict';
const createFoo = cb => {
let t;
const arr = [];
return {
run: (v) => {
arr.push(v);
if (t) {
clearTimeout(t);
}
t = setTimeout(() => {
cb(arr);
});
}
};
}
const foo = createFoo(vars => {
console.log('cb call ', vars);
});
foo.run(1);
foo.run(5);
for(let i = 0; i < 1000000; i++) {
Math.random();
}
foo.run(199);