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, and how to check it?
  5. What's the difference between '==' and '==='?
  6. What is debounce and how could you implement debounce?
  7. What is JSON and where do we use it?
  8. What is variable scope?
  9. What's the difference between arrow functions and normal functions?
  10. What is a hashtable?
  11. Can you name an example of a library for templating in JavaScript?
  12. Name 2 programming paradigms important for JavaScript app developers.
  13. List methods of file operations in a browser.
  14. What is a ternary operator?
  15. What are falsy values in JavaScript?
  16. What is a reference, and what type of data does it point to?
  17. List some frameworks for unit testing in JavaScript.
  18. What is a barrel in ES6?
  19. Does Javascript pass parameters by value or by reference?
  20. What is a linter?
  21. What is a memory leak and how to prevent it?
  22. What is a property descriptor?
  23. What are AMD and CommonJS?
  24. Explain the same-origin policy with regards to JavaScript.
  25. Why is it a good idea not to use the global scope in JavaScript?
  26. What's the difference between identity (===) and equality (==) in JavaScript?
  27. How can you simulate private variables in JavaScript?
  28. What are some asynchronous design patterns in JavaScript?
  29. What are Firebug and Firefox Developer Tools?
  30. What's the difference between a shim and a polyfill?
  31. What are $$ methods?
  32. What are websockets?
  33. What does Babel do?
  34. What is a linked list?
  35. What is recursion?
  36. What is an Immediately Invoked Function Expression (IIFE)?
  37. What's the difference between .forEach() and .map()?
  38. What are typical uses of anonymous functions?
  39. What's the difference between feature detection, feature inference, and using the user agent 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 normal function?
  43. What is the difference between ES6 class and ES5 function constructors?
  44. How would you compare two objects in JavaScript?
  45. How does this work in JavaScript?
  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 in JavaScript?
  52. What's the difference between a class and an object?
  53. What's the difference between mutable and immutable objects?
  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 does the Object.create() and Object.assign() methods do?
  63. What is the difference between a class and an object?
  64. What is the difference between mutable and immutable objects?
  65. Why might you want to create static class members?
  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 in JS?
  74. How to make a checkbox ticked when clicking on a label?
  75. Difference: event bubbling and event capturing
  76. Difference: 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. Difference: load event and DOMContentLoaded event
  81. When do you use load event?
  82. What is the difference between window and document?
  83. 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? Advantages and disadvantages
  88. Is JSONP Ajax?
  89. What HTTP request methods do you know?
  90. Examples of HTTP response codes
  91. What is FetchAPI?
  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 loops do you know?
  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? (module pattern, classical inheritance?)
  124. What is the benefit of using modules?
  125. What are modules?
  126. Examples of ways to refactor code
  127. What is hoisting?
  128. What is strict mode?
  129. What is the difference between spread syntax and rest syntax?
  130. What is a garbage collector?
  131. What is interpolation/template literals?
  132. What is a symbol?
This application is currently in maintenance mode.
Both questions and answers need to be refactored and restructured. There will be also new functionalities soon