Objects are assigned by reference, so b = a doesn't copy — both point to the same object. A shallow copy duplicates the top level but shares nested references; a deep copy duplicates everything, fully independent.
js
original = { : , : { : } };
shallow = { ...original };
shallow. = ;
shallow.. = ;
original..;
