lotide library with all the related function

Usage no npm install needed!

<script type="module">
  import ahyagoub40Lotide from 'https://cdn.skypack.dev/@ahyagoub40/lotide';



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.


Install it:

npm install @ahyagoub40/lotide

Require it:

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

Call it:

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