1.0.1 • Published 4 years ago

@yuhaoyan/lotide v1.0.1

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

Lotide

A mini clone of the Lodash library.

Summary

This repository contains the lotide project which built a mini library for the Lighthouse Labs Web Development Bootcamp.

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 @yuhaoyan/lotide

Require it:

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

Call it:

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

Table of Contents

  • assertEqual
    • compare the two values it takes in and print out a message telling us if they match or not
  • head
    • returns the first item in the array
  • tail
    • returns the "tail" of an array: everything except for the first item (head) of the provided array
  • eqArrays
    • takes in two arrays and returns true or false, based on a perfect match
  • assertArraysEqual
    • take in two arrays and console.log an appropriate message to the console
  • without
    • return a subset of a given array, removing unwanted elements
  • flatten
    • take in an array containing elements including nested arrays of elements, and return a "flattened" version of the array
  • middle
    • take in an array and return the middle-most element(s) of the given array
  • countOnly
    • be given an array and an object. It will return an object containing counts of everything that the input object listed
  • countLetters
    • take in a sentence (as a string) and then return a count of each of the letters in that sentence
  • letterPositions
    • return all the indices (zero-based positions) in the string where each character is found
  • findKeyByValue
    • takes in an object and a value. It should scan the object and return the first key which contains the given value. If no key with that given value is found, then it should return undefined
  • eqObjects
    • take in two objects and returns true or false, based on a perfect match
  • assertObjectsEqual
    • take in two objects and console.log an appropriate message to the console
  • map
    • take in two arguments:
      1. An array to map
      2. A callback function
    • The map function will return a new array based on the results of the callback function
  • takeUntil
    • take in two parameters:
      1. The array to work with
      2. The callback (which Lodash calls "predicate")
    • The function will return a "slice of the array with elements taken from the beginning." It should keep going until the callback/predicate returns a truthy value
  • findKey
    • takes in an object and a callback. It should scan the object and return the first key for which the callback returns a truthy value. If no key is found, then it should return undefined