1.0.1 • Published 3 years ago

@bilykb/lotide v1.0.1

Weekly downloads
-
License
ISC
Repository
github
Last release
3 years ago

Lotide

version 1.0.1

A Lighthouse Labs project by Brett Bilyk
Beware: These functions were created while studying Web Development at Lighthouse Labs and is not intended for use in production-grade software. Use at your own risk.

What is Lotide?


Lotide is a clone of the Lodash JavaScript library to practice creating various types of functions using JavaScript.


Summary


This repository contains all the functions created over the course of the Lotide project while studying at Lighthouse Labs. Functions will be organized by the week of learning in which they were created, and referred to in order of creation.


Usage


Install it: npm install @bilykb/lotide

Require it: const _ = require('@bilykb/lotide');

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


Table of Contents


Week 1 FunctionsWeek 2 Functions
assertEqual.jsmiddle.js
head.jscountOnly.js
tail.jscountLetters.js
eqArrays.jsfindKeyByValue.js
assertArraysEqual.jseqObjects.js
without.jsassertObjectsEqual.js
flatten.jsmap.js
takeUntil.js
findKey.js

Contents


Week 1 Functions:

assertEqual.js

  • A function which accepts two primitive data types as arguments: actual outcome and expected result. The function then prints to console whether the outcome matches the expected result with an assertion statement

head.js

  • a function which accepts an array as an argument, and returns the head of the array

tail.js

  • a function which accepts an array as an argument, and returns the tail of the array

eqArrays.js

  • a function which compares two arrays to determine if they are similar in elements and length

assertArraysEqual.js

  • a function which utilizes aqArrays.js to compare two arrays for an exact match, then prints to console a pass or fail assertion

without.js

  • a function that accepts two arrays: the source array, and an "itemsToRemove" array. It returns a new array with the items removed.

flatten.js

  • a function that accepts a nested array with one level of nesting as an argument, and returns a single "flattened" array

Week 2 Functions:

middle.js

  • A function that accepts an array, and returns the middle index value(s) in a new array

countOnly.js

  • a function that accepts an array of names, and an object of names you wish to make a tally of. Returns a new object with a name count

countLetters.js

  • a function that accepts a string of characters. It then returns an object with a tally of characters

letterPositions.js

  • a function that accepts a string of characters. It then returns an object with an array for the index of each character present

findByKeyValue.js

  • a function that searches for a key in an object

eqObjects.js

  • a function which compares two objects to see if they are similar

assertObjectsEqual.js

  • function which takes two parameters, the actual object, and the expected object, and returns an assertion passed or failed

map.js

  • this function is a copy of the higher order map() method. map() creates a new array populated with results of a callback function on every element in a specified array

    takeUntil.js

  • the function takeUntil() will collect items from a provided array until the callback function provided returns a truthy value

findKey.js

  • this function accepts an object and callback function. It iterates through the object and returns the first key for which the callback returns a truthy value. If not, returns undefined.