Lobashov_Ivan_PIBD-21_IP/Lab3/node_modules/call-bind
2024-01-10 22:39:31 +04:00
..
.github lab 2-5 2024-01-10 22:39:31 +04:00
test lab 2-5 2024-01-10 22:39:31 +04:00
.eslintignore lab 2-5 2024-01-10 22:39:31 +04:00
.eslintrc lab 2-5 2024-01-10 22:39:31 +04:00
.nycrc lab 2-5 2024-01-10 22:39:31 +04:00
callBound.js lab 2-5 2024-01-10 22:39:31 +04:00
CHANGELOG.md lab 2-5 2024-01-10 22:39:31 +04:00
index.js lab 2-5 2024-01-10 22:39:31 +04:00
LICENSE lab 2-5 2024-01-10 22:39:31 +04:00
package.json lab 2-5 2024-01-10 22:39:31 +04:00
README.md lab 2-5 2024-01-10 22:39:31 +04:00

call-bind Version Badge

github actions coverage dependency status dev dependency status License Downloads

npm badge

Robustly .call.bind() a function.

Getting started

npm install --save call-bind

Usage/Examples

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]);

Tests

Clone the repo, npm install, and run npm test