Bolshakova Anna ab21a11190 lab | há 3 semanas atrás | |
---|---|---|
.. | ||
.github | há 3 semanas atrás | |
test | há 3 semanas atrás | |
.eslintignore | há 3 semanas atrás | |
.eslintrc | há 3 semanas atrás | |
.nycrc | há 3 semanas atrás | |
CHANGELOG.md | há 3 semanas atrás | |
LICENSE | há 3 semanas atrás | |
README.md | há 3 semanas atrás | |
callBound.js | há 3 semanas atrás | |
index.js | há 3 semanas atrás | |
package.json | há 3 semanas atrás |
Robustly .call.bind()
a function.
npm install --save call-bind
const assert = require('assert');
const callBind = require('call-bind');
const callBound = require('call-bind/callBound');
function f(a, b) {
assert.equal(this, 1);
assert.equal(a, 2);
assert.equal(b, 3);
assert.equal(arguments.length, 2);
}
const fBound = callBind(f);
const slice = callBound('Array.prototype.slice');
delete Function.prototype.call;
delete Function.prototype.bind;
fBound(1, 2, 3);
assert.deepEqual(slice([1, 2, 3, 4], 1, -1), [2, 3]);
Clone the repo, npm install
, and run npm test