lhl 2bdf874dbb create 11 months ago
..
.github 2bdf874dbb create 11 months ago
test 2bdf874dbb create 11 months ago
.eslintrc 2bdf874dbb create 11 months ago
.nycrc 2bdf874dbb create 11 months ago
CHANGELOG.md 2bdf874dbb create 11 months ago
LICENSE 2bdf874dbb create 11 months ago
README.md 2bdf874dbb create 11 months ago
actualApply.d.ts 2bdf874dbb create 11 months ago
actualApply.js 2bdf874dbb create 11 months ago
applyBind.d.ts 2bdf874dbb create 11 months ago
applyBind.js 2bdf874dbb create 11 months ago
functionApply.d.ts 2bdf874dbb create 11 months ago
functionApply.js 2bdf874dbb create 11 months ago
functionCall.d.ts 2bdf874dbb create 11 months ago
functionCall.js 2bdf874dbb create 11 months ago
index.d.ts 2bdf874dbb create 11 months ago
index.js 2bdf874dbb create 11 months ago
package.json 2bdf874dbb create 11 months ago
reflectApply.d.ts 2bdf874dbb create 11 months ago
reflectApply.js 2bdf874dbb create 11 months ago
tsconfig.json 2bdf874dbb create 11 months ago

README.md

call-bind-apply-helpers Version Badge

github actions coverage dependency status dev dependency status License Downloads

npm badge

Helper functions around Function call/apply/bind, for use in call-bind.

The only packages that should likely ever use this package directly are call-bind and get-intrinsic. Please use call-bind unless you have a very good reason not to.

Getting started

npm install --save call-bind-apply-helpers

Usage/Examples

const assert = require('assert');
const callBindBasic = require('call-bind-apply-helpers');

function f(a, b) {
	assert.equal(this, 1);
	assert.equal(a, 2);
	assert.equal(b, 3);
	assert.equal(arguments.length, 2);
}

const fBound = callBindBasic([f, 1]);

delete Function.prototype.call;
delete Function.prototype.bind;

fBound(2, 3);

Tests

Clone the repo, npm install, and run npm test