1.0.0 • Published 2 years ago

@blazeluminous/lotide v1.0.0

Weekly downloads
-
License
ISC
Repository
github
Last release
2 years ago

Lotide

A mini clone of the Lodash library.

Purpose

BEWARE: This library was published for learning purposes. It is not intended for use in production-grade software.

This project was created and published by me as part of my learnings at Lighthouse Labs.

Usage

Install it:

npm install @blazeluminous/lotide

Require it:

const _ = require('@blazeluminous/lotide');

Call it:

const results = _.tail([1, 2, 3]) // => [2, 3]

Documentation

The following functions are currently implemented:

  • head(array): Retrieve the first element from input array
  • tail(array): Rerieve every element except the head (first element) from input array
  • assertEqual(actual, expected): Applies strict equality comparison to parameters actual and expected and logs result onto console.
  • eqArrays(arr1, arr2): Compares the values between arr1 and arr2 and returns a Boolean value based on a perfect match.
  • assertArraysEqual(arr1, arr2): An extention of eqArrays above. Compares the values between arr1 and arr2 and logs the Boolean onto console.
  • without(source, itemsToRemove): Return a new array with only those elements from source that are not present in the itemsToRemove array.
  • middle(arr): Return an array with only the middle element(s) of the provided array. If arr has an odd number of elements, return an array containing a single middle element. If arr is of even length, return an array with containing the two elements in the middle.
  • countOnly(allItems, itemsToCount): allItems is an array of strings that will be iterated over and // itemsToCount is an object specifying which strings to count. Returns an object specifying the count of each // string as itemsToCount.
  • countLetters(str): Returns the character count of input str within an object.
  • letterPositions(str): Returns all the indices in from input str where each character is found in the form of an object.
  • findKeyByValue(obj, val): Scan input object and return the first key which contains the input val.
  • eqObjects(obj1, obj2): Compares the key-value pairs of obj1 and obj2 and returns a Boolean depending on if both objects have identical keys with identical values.
  • assertObjectsEqual(obj1, obj2): An extention of eqObjects above. Compares the key-value pairs between obj1 and obj2 and logs the Boolean result onto console.
  • map(arr, callback): Return a new array based on the results of the callback function that is applied on each element of input arr.
  • takeUntil(arr, callback): Return a slice of the array with elements taken from the beginning until the callback provided returns a truthy value.
  • findKey(obj, callback): Scan input obj and return the first key for which callback returns a truthy value.