1. call-bind
Robustly `.call.bind()` a function
call-bind
Package: call-bind
Created by: ljharb
Last modified: Tue, 13 Feb 2024 06:20:30 GMT
Version: 1.0.7
License: MIT
Downloads: 187,521,533
Repository: https://github.com/ljharb/call-bind

Install

npm install call-bind
yarn add call-bind

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

RELATED POST

10 Must-Know Windows Shortcuts That Will Save You Time

10 Must-Know Windows Shortcuts That Will Save You Time

Arrays vs Linked Lists: Which is Better for Memory Management in Data Structures?

Arrays vs Linked Lists: Which is Better for Memory Management in Data Structures?

Navigating AWS Networking: Essential Hacks for Smooth Operation

Navigating AWS Networking: Essential Hacks for Smooth Operation

Achieving Stunning Visuals with Unity's Global Illumination

Achieving Stunning Visuals with Unity's Global Illumination

Nim's Hidden Gems: Lesser-known Features for Writing Efficient Code

Nim's Hidden Gems: Lesser-known Features for Writing Efficient Code