Interviewfragen zu JavaScript (Middle) mit Antworten

75 Fragen fürs Vorstellungsgespräch zu JavaScript (Middle) mit richtigen Antworten, Erklärungen und Links zur Dokumentation.

Diesen Test machen
  1. 1.Was gibt dieser Code aus?
  2. 2.Wie unterscheiden sich call, apply und bind voneinander?
  3. 3.Was gibt dieser Code aus?
  4. 4.Was gibt dieser Code nach einer Sekunde aus?
  5. 5.Was gibt dieser Code aus?
  6. 6.Wie sucht die Engine eine Eigenschaft, die das Objekt selbst nicht hat?
  7. 7.Was macht Object.create(proto)?
  8. 8.Was sind Klassen in JavaScript eigentlich?
  9. 9.Warum muss ein Unterklassen-Konstruktor super() vor dem Zugriff auf this aufrufen?
  10. 10.Wie unterscheidet sich #count von _count in einer Klasse?
  11. 11.Wie funktioniert obj instanceof Class?
  12. 12.Was gibt dieser Code aus?
  13. 13.Wofür wurde früher eine IIFE (function () { ... })() benutzt?
  14. 14.Was ist Currying?
  15. 15.Wie unterscheidet sich Debounce von Throttle?
  16. 16.Was ist Memoisierung?
  17. 17.Wie verhält sich Promise.all, wenn eines der Promises abgelehnt wird?
  18. 18.Was liefert Promise.allSettled?
  19. 19.Wie unterscheidet sich Promise.any von Promise.race?
  20. 20.Wie lange dauert dieser Code, wenn jeder Request 1 Sekunde braucht?
  21. 21.Warum wartet forEach nicht auf asynchrone Callbacks?
  22. 22.Was gibt die Kette aus?
  23. 23.Was macht .finally() bei einem Promise?
  24. 24.In welcher Reihenfolge werden die Zeilen ausgegeben?
  25. 25.Warum ist ein rekursives setTimeout manchmal besser als setInterval?
  26. 26.Wofür ist requestAnimationFrame gedacht?
  27. 27.Was macht eine Generatorfunktion?
  28. 28.Was braucht ein eigenes Objekt, damit es mit for...of und Spread funktioniert?
  29. 29.Wofür wird Symbol verwendet?
  30. 30.Wie unterscheidet sich WeakMap von Map?
  31. 31.Warum ist structuredClone(obj) besser als JSON.parse(JSON.stringify(obj))?
  32. 32.Was gibt dieser Code aus?
  33. 33.Was bringt Object.defineProperty(obj, 'id', { value: 1, writable: false })?
  34. 34.Was liefert [10, 1, 2].sort()?
  35. 35.Was liefern parseInt('12px') und Number('12px')?
  36. 36.Wie unterscheiden sich ES-Module von CommonJS?
  37. 37.Wozu braucht man dynamisches import()?
  38. 38.Lehnt fetch das Promise bei einer 404-Antwort ab?
  39. 39.Wie bricht man einen fetch-Request ab?
  40. 40.Was ist CORS?
  41. 41.Warum ist ein Cookie mit dem Flag HttpOnly sicherer als ein normales?
  42. 42.Wie unterscheidet sich stopPropagation von stopImmediatePropagation?
  43. 43.Was bewirkt die Option { passive: true } in addEventListener('touchmove', ...)?
  44. 44.Wie fügt man effizient 1000 Elemente ins DOM ein?
  45. 45.Wie erkennt man am bequemsten, dass ein Element in den Viewport kommt?
  46. 46.Wie erstellt man eine eigene Fehlerklasse richtig?
  47. 47.Was liefert Object.fromEntries(Object.entries({ a: 1, b: 2 }).map(([k, v]) => [k, v * 10]))?
  48. 48.Wie unterscheidet sich ein getter von einer normalen Eigenschaft?
  49. 49.Was liefert Array.from({ length: 3 }, (_, i) => i * 2)?
  50. 50.Was liefert {} === {}?
  51. 51.In welcher Reihenfolge werden die Zeilen ausgegeben?
  52. 52.Warum behandelt dieses catch die Ablehnung nicht?
  53. 53.Wie unterscheidet sich arr.toSorted() von arr.sort()?
  54. 54.Was liefert "a-b-c".replace("-", "+")?
  55. 55.Warum schreibt man Event-Handler oft als Klassenfelder mit Arrow Function?
  56. 56.Was gibt dieser Code aus?
  57. 57.Was liefert new Array(3).map((_, i) => i)?
  58. 58.Welchen Fehler wirft undefinedVariable.foo und welchen null.foo?
  59. 59.Was liefert typeof notDeclared, wenn notDeclared nie deklariert wurde?
  60. 60.Was passiert, wenn dieser Code läuft?
  61. 61.Was macht new User("Ann") mit einer normalen Konstruktorfunktion?
  62. 62.Wie unterscheidet sich Object.assign(target, source) von { ...target, ...source }?
  63. 63.Warum braucht man hier zwei await?
  64. 64.Wie schickt man am einfachsten alle Felder eines <form> mit fetch?
  65. 65.Wie benachrichtigt man andere Teile der Seite über ein DOM-Event?
  66. 66.Mit welcher Eigenschaft erkennt man die gedrückte Taste?
  67. 67.Was macht options.onSuccess?.(data)?
  68. 68.Was macht config.timeout ??= 5000?
  69. 69.Warum wandelt man eine große Liste erlaubter IDs vor vielen Abfragen in ein Set um?
  70. 70.Wie kann eine Funktion ohne Klassen privaten Zustand halten?
  71. 71.Was liefert event.target.closest("[data-id]")?
  72. 72.Warum liefert el.style.width einen leeren String für eine in CSS gesetzte Breite?
  73. 73.Wie speichert man Geld, um Probleme wie bei 0.1 + 0.2 zu vermeiden?
  74. 74.Was gibt dieser Code aus?
  75. 75.Was liefert arr.with(1, "x") für arr = ["a", "b", "c"]?