Was ist der Unterschied zwischen Primitives und Objekten?
Primitives — Strings, Numbers, Booleans, null, undefined, Symbols, BigInts — werden by value kopiert. Objekte, einschließlich Arrays und Funktionen, werden by reference kopiert, sodass zwei Variablen auf dasselbe zeigen können und eine Änderung über die eine auch über die andere sichtbar wird. Fast jeder Bug nach dem Muster „warum hat sich mein Array verändert" liegt genau daran.