1. What are the data types Javascript supports?
  2. What do the break and the continue statements do?
  3. What's the difference between var, const, and let?
  4. What's the difference between null, undefined, and undeclared variables in JavaScript, and how can you check for these states?
  5. What is the difference between '==' and '===' operators in JavaScript?
  6. What is debounce in JavaScript and how can you implement it?
  7. What is JSON and how is it used in JavaScript?
  8. What is variable scope in JavaScript and what are the different types of scope?
  9. What are the key differences between arrow functions and regular functions in JavaScript?
  10. What is a hashtable?
  11. What are some examples of templating libraries in JavaScript and how are they used?
  12. What are the main programming paradigms supported by JavaScript?
  13. How can you perform file operations in JavaScript, both in the browser and on the server?
  14. What is a ternary operator in JavaScript and how is it used?
  15. What is a reference in JavaScript and how does it differ from primitive values?
  16. What are falsy values in JavaScript and how are they used in conditional statements?
  17. What are some popular JavaScript unit testing frameworks and how are they used?
  18. What is a barrel in ES6 and how is it used in module organization?
  19. How does JavaScript handle parameter passing for different data types?
  20. What is a linter in JavaScript development and what are its benefits?
  21. What is a memory leak and how can it be prevented?
  22. What is a property descriptor and what properties does it include?
  23. What are AMD and CommonJS in module systems?
  24. What is the same-origin policy and why is it important?
  25. Why is it considered bad practice to use the global scope extensively?
  26. What is the difference between identity (===) and equality (==) operators?
  27. How can you simulate private variables?
  28. What are the main asynchronous design patterns?
  29. What are Firebug and Firefox Developer Tools used for in web development?
  30. What is the difference between a shim and a polyfill?
  31. What are $$ methods and why are they considered bad practice?
  32. What are WebSockets and what are they used for?
  33. What is Babel and why is it used?
  34. What is a linked list and how does it differ from an array?
  35. What is recursion and when is it useful?
  36. What is the difference between .forEach() and .map() methods?
  37. What is an Immediately Invoked Function Expression (IIFE) and why is it used?
  38. What are typical use cases for anonymous functions?
  39. What are the differences between feature detection, feature inference, and using the UA string?
  40. What's the difference between function Person(){}, var person = Person(), and var person = new Person()?
  41. What's the difference between a function declaration and a function expression?
  42. What is the difference between 'this' in an arrow function and a regular function?
  43. What is the difference between ES6 classes and ES5 function constructors?
  44. How would you compare two objects?
  45. How does 'this' work?
  46. How does prototypal inheritance work?
  47. How is prototypal inheritance different from classical inheritance?
  48. What's the difference between host objects and native objects?
  49. What's the difference between .call(), .apply(), and .bind()?
  50. How to change the context of 'this' in a function?
  51. How to clone an object?
  52. What's the difference between a class and an object?
  53. What is a symbol?
  54. Why might you want to create static class members?
  55. What are the pros and cons of extending built-in JavaScript objects?
  56. What are predefined objects?
  57. What are getters and setters?
  58. What is an abstract class?
  59. What do we mean by Object Oriented Programming (OOP)?
  60. What is an object?
  61. What is a class?
  62. What do the Object.create() and Object.assign() methods do?
  63. What is a garbage collector?
  64. What is the difference between mutable and immutable objects?
  65. What is interpolation/template literals?
  66. Can you provide examples, pros, and cons of applying immutability?
  67. What is Map()?
  68. What is Set()?
  69. How to iterate over Maps and Sets?
  70. When do we use Map and Set?
  71. What is DOM?
  72. What is event propagation and delegation?
  73. How to control mouse right-click?
  74. How to make a checkbox ticked when clicking on a label?
  75. What is the difference between event bubbling and event capturing?
  76. What is the difference between node.nextSibling and ChildNode.nextElementSibling?
  77. What is a NodeList?
  78. How to rotate an element 90 degrees?
  79. When would you use document.write()?
  80. What is the difference between load event and DOMContentLoaded event?
  81. When do you use load event?
  82. What is the difference between window and document?
  83. What are 4 ways to validate a form?
  84. How to submit a form?
  85. Where to hold form data in React and JavaScript?
  86. Does inputting data mutate component state?
  87. What is AJAX? What are its advantages and disadvantages?
  88. Is JSONP considered AJAX?
  89. What HTTP request methods do you know?
  90. What are some examples of HTTP response codes?
  91. What is Fetch API?
  92. Can you describe the structure of an AJAX response, including the status code, headers, and body?
  93. What is the difference between synchronous and asynchronous code?
  94. Can you provide examples of asynchronous functions, and where do they come from?
  95. What are the call stack and the event loop?
  96. What is a callback function?
  97. Why do we use callback functions?
  98. What is callback hell?
  99. What is a promise?
  100. What are then(), catch(), and finally() methods in promises?
  101. What is promise polyfill?
  102. What is Promise.all?
  103. What is the purpose of design patterns in programming?
  104. Can you provide examples of design patterns and their benefits?
  105. What is functional programming (FP)?
  106. What is a higher-order function?
  107. What does it mean that JavaScript functions are first-class objects?
  108. What is a pure function?
  109. What is composing?
  110. What is the definition and purpose of closures?
  111. What are the meanings of Map, Filter, Reject?
  112. What does it mean when a function is idempotent?
  113. What is currying?
  114. What are the differences between cookies, sessionStorage, and localStorage?
  115. What types of loops are available in JavaScript?
  116. How to iterate over object properties?
  117. How to iterate over collections?
  118. How to iterate over a NodeList?
  119. How to iterate over arrays?
  120. What are generators?
  121. What is destructuring?
  122. How to share code between files?
  123. How do you organize your code?
  124. What are modules?
  125. What are some examples of ways to refactor code?
  126. What is hoisting?
  127. What is strict mode?
  128. What is the difference between spread syntax and rest syntax?
Estimated time: 45 hours

Settings

THEME

TIMER

Show in top bar
Enable sound
Infinite loop

NAVIGATION

Show arrows on desktop
Show arrows on mobile

JAVASCRIPT CONSOLE

Show console
Keep it on all tabs

QUESTIONS

Show answer background

APPLICATION DATA

This application is currently in maintenance mode.
Both questions and answers need to be refactored and restructured. There will be also new functionalities soon