You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
louisafriederike b00d9f80ed copying eixogen 1 month ago
..
.github copying eixogen 1 month ago
.eslintrc copying eixogen 1 month ago
.nycrc copying eixogen 1 month ago
CHANGELOG.md copying eixogen 1 month ago
LICENSE copying eixogen 1 month ago
README.md copying eixogen 1 month ago
env.d.ts copying eixogen 1 month ago
env.js copying eixogen 1 month ago
index.d.ts copying eixogen 1 month ago
index.js copying eixogen 1 month ago
package.json copying eixogen 1 month ago
tsconfig.json copying eixogen 1 month ago

README.md

set-function-length Version Badge

github actions coverage License Downloads

npm badge

Set a functions length.

Arguments:

  • fn: the function
  • length: the new length. Must be an integer between 0 and 2**32.
  • loose: Optional. If true, and the length fails to be set, do not throw. Default false.

Returns fn.

Usage

var setFunctionLength = require('set-function-length');
var assert = require('assert');

function zero() {}
function one(_) {}
function two(_, __) {}

assert.equal(zero.length, 0);
assert.equal(one.length, 1);
assert.equal(two.length, 2);

assert.equal(setFunctionLength(zero, 10), zero);
assert.equal(setFunctionLength(one, 11), one);
assert.equal(setFunctionLength(two, 12), two);

assert.equal(zero.length, 10);
assert.equal(one.length, 11);
assert.equal(two.length, 12);