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 @jgoncalvesjr/lotide
Require it:
const _ = require('@jgoncalvesjr/lotide');
Call it:
const results = _.tail([1, 2, 3]) // => [2, 3]
- Fixed module exports
- Fixed incorrect file uploads
- Cleaned code within files
- Included new automated tests for functions
- Refactor functions when applicable
- Finish implementing automated testing in all functions
- countLetters(string): Given a string of letters, it returns an object with the number of occurrences for each.
- countOnly(allItems, itemsToCount): Given an object and a list of values, it returns the number of occurrences of each.
- eqArrays(array1, array2): Tests if two arrays are the same. Supports nested arrays.
- eqObjects(object1, object2): Tests if two objects are the same. Supports nested objects.
- findKey(object, callback): Given an object and a callback, it returns the key associated with it.
- findKeyByValue(obj, obj_value): Given an object and a value, it returns the key associated with it.
- flatten(array): Given a one level nested array, it returns a flat array of the same elements.
- head(array): Given an array, it returns the first element.
- letterPositions(string): Given a string, it returns an object with an array of positions for each character.
- map(array, callback): Given an array and a callback function, it returns an array with the callback applied.
- middle(array): Returns the middle element of an array. If the array is even, it will return both middle ones. If the array is odd it will return the middle one.
- tail(array): Returns the last element of an array.
- takeUntil(array, callback): Given an array and a callback function, it returns all elements up to a match.
- without(array, array): Given an array and an exclusion list, returns a new array without excluded elements.
- assertEqual(arg1, arg2): Compares two primitive values.
- assertArraysEqual(array1, array2): Compares two arrays from eqArrays output.
- assertObjectsEqual(object1, object2): Compares two objects from eqObjects output.
These functions will remain in lotide database for project history purposes.
Lotide project uses mocha and chai Unit Tests. To run the tests for the node.js integration:
- Run
mocha
in the Terminal in the root path of the repository package.