JavaScript Interview Questions
- Definition
- Learn about JavaScript Engine (Chrome V8)
- https://www.freecodecamp.org/news/execution-context-how-javascript-works-
behind-the-scenes/
- Map,WeakMap, set & Array
- Prototypal Inheritance
- Closure
- Hoisting
- Functional declaration vs function expression
- ES6 vs ES5, explain ES6 features
- Array methods like filter, reduce, find, map, forEach, sort etc.
- Learn sort method on numbers and string how it is used to sort numbers and
strings
- String methods like split, join, indexOf, includes etc.
- Functions (very imp) methods: call, apply, bind
- Currying
- __proto vs prototype property
- Object.create()
- Default parameters in functions
- Prototype chain
- Reverse a string
- Find the intersection/union of two arrays
- Two sum problem
- Array flattening
- Objects, Object.freeze(), Object.seal(), Object.keys(), Object.values()
- Temporal dead zone
- Difference among let, var and const
- Debounce and throttling
- Memoization
- Web performance
- Web Accessibility
- Promises
- Callbacks, Callback Hell
- Event Loop, Call Stack, Callback queue
- OOP (Object Oriented Programming)
- ES6 features (Rest Operator, spread operator)
- Shallow Copy and Deep copy
- Object de-structuring, array de-structuring
- Aysnc Await
- Learn about function constructor vs classes
- This keyword and how it behaves differently with function and objects
- This keyword with arrow functions
- Arrow functions
- Event bubbling and event capturing
- Event delegation
- Sets, Maps
- Garbage collection (mark and sweep, reference counting algorithms)
- Stack and Queue (use of these in script execution)
- Scope Chaining
- Scoping like global scope, block scope and function scope (learn the order of
these)
- Symbol
- Generator functions
- Design Patterns
- Command Pattern
- Factory Pattern
- Flyweight Pattern
- Mediator/Middleware Pattern
- Mixin Pattern
- Module Pattern
- Observer Pattern
- Prototype Pattern
- Provider Pattern
- Proxy Pattern
- Singleton Pattern
- Static Import Pattern