A mini clone of the Lodash library.
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.
npm install @ahyagoub40/lotide
const _ = require('@ahyagoub40/lotide');
const results = _.tail([1, 2, 3]) // => [2, 3]
The following functions are currently implemented:
head(array): returns the first item in the array
tail(array): returns the element of the passed array excluding the first item
middle(array): returns the middle indicies of the array
assertArraysEqual((firstArray, secondArray)): compare if two arrays are identical, that they have the same length and that they have identical items in the same indicies
assertEqual(actual, expected): check two values that they are stricty equal in terms of type and value
assertObjectsEqual(object1, object2): check if objects are identical
countLetters(sentence): takes a sentence and returns an object with letters as keys and their num of occourances as valus
countOnly(allItems, itemsToCount): function that takes an array and an abject, returns an object with key-value pair indicating how many times the key was present in the array
eqArrays(array1, array2): returns true if the two passed arrays are identical
eqObjects(object1, object2): compare two object that they are identical, have the same key value pairs
findKey(object, callback): takes an object and a function as parameters. return the first key where the function is true
findKeyByValue(object, value): return the first key int the object that its value matches the value provide as an argument to the function
flatten(arrayOfArrays): takes an array of array and flatten the values into one single array
letterPositions(sentence): returns an object with the letters and the indicies of the letter in the sentence
map(array, callback): returns an array after applying the conditions of the callback function in the passed array
takeUntil(array, callback): return items of the passed array up untill the the condition of the callback is true
without(sourceArray, itemsToRemmoveArray): it filters out the items passed in the second array from the first one