Build on fundamentals with intermediate patterns and techniques
Implement a function that transforms a function that takes multiple arguments into a function that can be repeatedly called with only one argument at a time
Implement a function to limit how many times a function can be executed by delaying the execution of the function until after a specified time after its last execution attempt
Implement a function to control the execution of a function by limiting how many times it can execute over time
Implement a function that returns a memoized version of a function which accepts a single argument
Implement a function that transforms a function that takes multiple arguments into a function that can be repeatedly called with any number of arguments
Implement a debounce function that comes with a cancel method to cancel delayed invocations and a flush method to immediately invoke them
Implement a function that returns a memoized version of a function which accepts any number of arguments
Implement a function that accepts a callback and restricts its invocation to at most N times
Implement a function that returns a counter object with methods to retrieve and manipulate the value
Implement a function that takes a function following the common error-first callback style and returns a version that returns promises
Implement the Promise.all() function that resolves to an array of results if all the input elements are resolved or rejects otherwise
Implement the Promise.any() function that resolves when any of the input elements are resolved
Implement a function to resolve a given value to a Promise
Implement the Promise.allSettled() function that resolves to an array of outcomes when all the input elements are either resolved or rejected
Implement a function to merge the results of two promises into a single value
Implement a function that resolves a promise if it is fulfilled within a timeout period and rejects otherwise
Implement a function that returns an object containing a new `Promise` object and two functions to resolve or reject it
Implement a promisify function that allows the original function to override the return value
Implement a function that maps an array of items with an asynchronous mapping function
Implement a function that maps an array of items with an asynchronous mapping function while not exceeding the concurrency limit
Implement a hook that manages an array of items
Implement a hook that debounces a value
Implement a hook that manages a JavaScript set
Implement a hook that invokes a callback function after a specified delay
Implement a hook that returns the current height and width of the window
Implement a hook that handles click events anywhere on the document
Implement a hook that returns the current breakpoint name based on the current window width
Implement a hook that detects clicks outside of a specified element
Implement a hook that manages a countdown
Implement a hook that subscribes to browser events
Implement a hook that tracks whether an element is being hovered
Implement a hook that creates an interval that invokes a callback function at a specified delay
Implement a hook that subscribes to keyboard events
Implement a hook that manages a JavaScript map
Implement a hook that manages an object value
Implement a hook that manages a step counter for a multi-step process
Implement a hook that throttles a value
Implement a hook that manages a controlled input value and tracks its dirty & touched state
Implement a hook that subscribes and responds to media query changes (e.g. screen size, resolution, orientation, etc.)
Implement a hook that is similar to useState, but supports a mediation process
Implement a hook that manages a promise resolution
Implement a hook that detects user inactivity
Implement a function that counts the number of times a value appears in an array based on a function or property name
Implement a function that recursively flattens an array into a single level deep
Implement a function that performs a deep copy of a value
Implement a function that determines if two values are equal
Implement a function that groups values in an array based on a function or property name
Implement a function that returns an array of unique values that are included in all given arrays based on a provided iteratee function
Computes the intersection of arrays using a custom comparator function to determine equality between elements
Implement a function that creates an array of unique values, in order, from all given arrays.
Implement a function to check if a value is an empty object, collection, map, or set
Implement a function that returns a new object after squashing the input object into a single level of depth
Implement a function that removes specified keys and their corresponding values from an object, including nested objects or arrays
Implement a function to convert all the keys in an object to camel case
Implement a function that returns an object with all falsey values removed
Implement a function that checks if object conforms to source
Implement a function to recursively transform values
Implement a function that merges two objects together
Implement a function to get all DOM elements that are rendered using the specified style
Implement a function to get all DOM elements that contain the specified classes
Implement a function to get all DOM elements that match a tag
Implement a jQuery-like function that sets the style of a DOM element
Implement a set of jQuery-like functions that manipulates classes on a DOM element
Implement a function to determine if two DOM trees are the same
Implement a function that conditionally joins CSS class names together
Implement a function to merge rows of data from the same user
Implement a class that can subscribe to and emit events that trigger attached callback functions
Implement a function to serialize an object into an HTML string with indentation
Implement a function that converts a JavaScript value into a JSON string
Implement a function that formats a list of items into a single readable string
Implement a function that composes asynchronous middleware functions like in Koa.js
Implement a class that can subscribe to and emit events that trigger attached callback functions. Subscription objects are returned and can unsubscribe itself
Implement a function that creates a resumable interval object
Implement a function to highlight text if a searched term appears within it
Implement a function to highlight text if searched terms appear within it