Amazon Interview Questions

Questions and problems from Amazon frontend interviews.

Accordion

Accordion is a component that allows the user to expand and collapse content.

Autocomplete

Autocomplete is a component that allows the user to select an option from a list of options.

Nested Checkboxes

Nested Checkboxes is a component that allows the user to select nested checkboxes.

Star Rating

Star Rating is a component that allows the user to rate something.

Tabs

Tabs is a component that allows the user to switch between different views.

Tic Tac Toe Game

Tic Tac Toe Game is a component that lets the user play a complete game of tic tac toe in the browser.

Tooltip

Tooltip is a component that allows the user to see a tooltip.

Implement bind polyfill

Implement bind polyfill in JavaScript

Implement curry function

Implement curry function in JavaScript

Implement custom Array.prototype.map

Implement custom Array.prototype.map

Debounce decorator

Implement debounce decorator

Deep Copy of an Object

Implement deep copy of an object in JavaScript

Deep Equal of two objects

Implement deep equal of two objects in JavaScript

Implement Event Emitter

Learn how to implement a custom event emitter in JavaScript

Implement custom Array.prototype.filter

Implement custom Array.prototype.filter

Flatten the Array

Learn different approaches to flatten nested arrays in JavaScript

Implement custom Array.prototype.forEach

Implement custom Array.prototype.forEach

Implement Custom Promise

Learn how to implement a custom Promise class from scratch in JavaScript

Implement a custom Observable

Implement a custom Observable

Implement a custom Promise.all()

Implement a custom Promise.all()

Implement a Custom Promise Class

Implement a Custom Promise Class

Implement a custom Promise.race()

Implement a custom Promise.race()

Implement a Custom Promisify Function

Implement a Custom Promisify Function

Implement Spy decorator

Implement Spy decorator

Implement throttle decorator

Implement throttle decorator

Traverse DOM tree

Traverse DOM tree