1.0.1 • Published 4 years ago

@jgoncalvesjr/lotide v1.0.1

Weekly downloads
1
License
ISC
Repository
github
Last release
4 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 @jgoncalvesjr/lotide

Require it:

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

Call it:

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

Documentation

Version 1.0.1

  • Fixed module exports
  • Fixed incorrect file uploads
  • Cleaned code within files
  • Included new automated tests for functions

Next implementations:

  • Refactor functions when applicable
  • Finish implementing automated testing in all functions

The following functions are currently implemented:

  1. countLetters(string): Given a string of letters, it returns an object with the number of occurrences for each.
  2. countOnly(allItems, itemsToCount): Given an object and a list of values, it returns the number of occurrences of each.
  3. eqArrays(array1, array2): Tests if two arrays are the same. Supports nested arrays.
  4. eqObjects(object1, object2): Tests if two objects are the same. Supports nested objects.
  5. findKey(object, callback): Given an object and a callback, it returns the key associated with it.
  6. findKeyByValue(obj, obj_value): Given an object and a value, it returns the key associated with it.
  7. flatten(array): Given a one level nested array, it returns a flat array of the same elements.
  8. head(array): Given an array, it returns the first element.
  9. letterPositions(string): Given a string, it returns an object with an array of positions for each character.
  10. map(array, callback): Given an array and a callback function, it returns an array with the callback applied.
  11. 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.
  12. tail(array): Returns the last element of an array.
  13. takeUntil(array, callback): Given an array and a callback function, it returns all elements up to a match.
  14. without(array, array): Given an array and an exclusion list, returns a new array without excluded elements.

The following functions are redundant, and therefore, obsolete:

  1. assertEqual(arg1, arg2): Compares two primitive values.
  2. assertArraysEqual(array1, array2): Compares two arrays from eqArrays output.
  3. assertObjectsEqual(object1, object2): Compares two objects from eqObjects output.

These functions will remain in lotide database for project history purposes.

Tests

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.