1.0.0 • Published 3 years ago

@egenazturemis/lotide v1.0.0

Weekly downloads
-
License
ISC
Repository
github
Last release
3 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 @egenazturemis/lotide

Require it:

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

Call it:

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

Documentation

The following functions are currently implemented:

  • head(array): returns the first item in the array.
  • tail(array): returns the "tail" of an array: everything except for the first item (head) of the provided array.
  • middle(array): takes in an array and returns the middle-most element(s) of the given array.
  • without(array, itemsToRemove): returns a subset of a given array, removing unwanted elements.
  • takeUntil(array, callback): keeps collecting items from a provided array until the callback provided returns a truthy value.
  • map(array, callback): takes in an array and a callback function and returns a new array based on the results of the callback function.
  • letterPositions(string): returns all the indices in a string where each character is found.
  • findKeyByValue(object, value): returns the first key which contains the given value.
  • findKey(object, callback): scans the given object and returns the first key for which the callback returns a truthy value
  • eqObjects(firstObject, secondObject): takes in two objects and returns true or false, based on a perfect match.
  • eqArrays(firstArray, secondArray): takes in two arrays and returns true or false, based on a perfect match.
  • countOnly(allItems, itemsToCount): takes in an array of items and returns counts for a specific subset of those items.
  • countLetters(string): takes in a a string and then return a count of each of the letters in that sentence.
  • assertObjectsEqual(firstObjects, secondObject): compares the two objects it takes in and prints out a message telling us if they match or not.
  • assertEqual(firstValue, secondValue): compares the two primitive data it takes in and prints out a message telling us if they match or not.
  • assertArraysEqual(firstArray, secondArray): compares the two arrays it takes in and prints out a message telling us if they match or not.