You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
陈@jkccchen123 c1c969a7c2
jk0624
11 months ago
..
.github jk0624 11 months ago
test jk0624 11 months ago
.eslintignore jk0624 11 months ago
.eslintrc jk0624 11 months ago
.nycrc jk0624 11 months ago
CHANGELOG.md jk0624 11 months ago
LICENSE jk0624 11 months ago
README.md jk0624 11 months ago
callBound.js jk0624 11 months ago
index.js jk0624 11 months ago
package.json jk0624 11 months ago

README.md

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