array-utility-package
v1.0.0
Published
This package provides custom implementations of common array methods and some utility functions for JavaScript.
Downloads
1
Readme
Custom Array Methods and Utility Functions
This package provides custom implementations of common array methods and some utility functions for JavaScript.
Installation
Install the package using npm: install array-utility-package
npm install array-utility-package
Usage
const {
customMap,
customFilter,
customReduce,
customCall,
customApply,
customBind,
customFlat,
sumArray,
reverseString,
randomInRange
} = require('array-utility-package');
Custom Array Methods
#These methods are added to the Array prototype and can be used on any array.
customMap(callback)
- Signature: Array.prototype.customMap = function(callback)
const numbers = [1, 2, 3, 4];
const doubled = numbers.customMap(x => x * 2);
console.log(doubled); // Output: [2, 4, 6, 8]
customFilter(callback)
- Signature: Array.prototype.customFilter = function(callback)
const numbers = [1, 2, 3, 4, 5];
const evenNumbers = numbers.customFilter(x => x % 2 === 0);
console.log(evenNumbers); // Output: [2, 4]
customReduce(callback, initialValue)
- Signature: Array.prototype.customReduce = function(callback, initialValue)
const numbers = [1, 2, 3, 4];
const sum = numbers.customReduce((acc, curr) => acc + curr, 0);
console.log(sum); // Output: 10
customFlat(depth)
- Signature: Array.prototype.customFlat = function(depth)
const nestedArray = [1, [2, [3, 4]]];
const flattened = nestedArray.customFlat(2);
console.log(flattened); // Output: [1, 2, 3, 4]
customCall(context, ...args)
- Signature: Function.prototype.customCall = function(context, ...args)
function greet(greeting) {
console.log(`${greeting}, ${this.name}!`);
}
const person = { name: 'John' };
greet.customCall(person, 'Hello'); // Output: Hello, John!
customApply(context, argsArray)
- Signature: Function.prototype.customApply = function(context, argsArray)
function introduce(greeting, punctuation) {
console.log(`${greeting}, ${this.name}${punctuation}`);
}
const person = { name: 'Alice' };
introduce.customApply(person, ['Hi', '!']); // Output: Hi, Alice!
customBind(context, ...args)
- Signature: Function.prototype.customBind = function(context, ...args)
function multiply(a, b) {
return a * b;
}
const double = multiply.customBind(null, 2);
console.log(double(4)); // Output: 8
sumArray(array)
- Signature: function sumArray(array)
const numbers = [1, 2, 3, 4];
console.log(sumArray(numbers)); // Output: 10
reverseString(str)
- Signature: function reverseString(str)
console.log(reverseString("hello")); // Output: "olleh"
randomInRange(min, max)
- Signature: function randomInRange(min, max)
console.log(randomInRange(1, 10));