@qnizami1983/lotide

1.0.2 • Public • Published

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 as part of my learnings at Lighthouse Labs.

Usage

Install it:

npm install @qnizami1983/lotide

Require it:

const _ = require('@qnizami1983/lotide');`

Functions and Documentation

head(array) Returns the first element of the array.

Example:

const firstElement = _.head([1, 2, 3]); // Returns 1

tail(array) Returns a new array with all elements except the first one.

Example:

const remainingElements = _.tail([1, 2, 3]); // Returns [2, 3]

middle(array) Returns an array containing the middle elements of the input array.

Example:

const middleElements = _.middle([1, 2, 3, 4, 5]); // Returns [2, 3]

assertArraysEqual(actual, expected) Compares two arrays for equality and logs the result.

Example:

_.assertArraysEqual([1, 2, 3], [1, 2, 3]); // Logs "✅ Assertion Passed: [1, 2, 3] === [1, 2, 3]"

assertEqual(actual, expected) Compares two values for equality and logs the result.

Example:

_.assertEqual(5, 5); // Logs "✅ Assertion Passed: 5 === 5"

assertObjectsEqual(actual, expected) Compares two objects for equality and logs the result.

Example:

_.assertObjectsEqual({ a: 1, b: 2 }, { b: 2, a: 1 }); // Logs "✅ Assertion Passed: [object Object] === [object Object]"

without(source, itemsToRemove) Returns a new array with elements from the source array without the specified items.

Example:

const filteredArray = _.without([1, 2, 3, 4, 5], [3, 4]); // Returns [1, 2, 5]

countLetters(sentence) Returns an object containing the count of each letter in the input sentence.

Example:

const letterCounts = _.countLetters("Hello, World!"); // Returns an object with letter counts

countOnly(allItems, itemsToCount) Returns an object with the counts of specified items in the input array.

Example:

const countResult = _.countOnly(["a", "b", "c", "a", "b"], { a: true, b: true }); // Returns an object with counts

findKey(object, callback) Returns the first key in the object that satisfies the given callback.

Example:

const foundKey = _.findKey({ a: 1, b: 2, c: 3 }, x => x === 2); // Returns "b"

findKeyByValue(object, value) Returns the key in the object with the specified value.

Example:

const foundKeyByValue = _.findKeyByValue({ a: 1, b: 2, c: 3 }, 2); // Returns "b"

flatten(arr) Returns a new array with all nested arrays flattened.

Example:

const flattenedArray = _.flatten([[1, 2], [3, 4], [5, 6]]); // Returns [1, 2, 3, 4, 5, 6]

letterPositions(sentence) Returns an object containing arrays of indices for each letter in the input sentence.

Example:

const letterPositionObj = _.letterPositions("Hello, World!"); // Returns an object with arrays of indices

map(array, callback) Returns a new array with the results of applying the callback function to each element.

Example:

const mappedArray = _.map([1, 2, 3], x => x * 2); // Returns [2, 4, 6]

takeUntil(array, callback) Returns a new array containing elements from the input array until the callback returns a truthy value.

Example:

const takenArray = _.takeUntil([1, 2, 3, 4, 5], x => x === 3); // Returns [1, 2]

Readme

Keywords

Package Sidebar

Install

npm i @qnizami1983/lotide

Weekly Downloads

0

Version

1.0.2

License

ISC

Unpacked Size

25.8 kB

Total Files

37

Last publish

Collaborators

  • qnizami1983