Message from JavaScript discussions

July 2017

— So first iterate ALL nodes in current object, schedule objects/arrays, then pop the next traversal target from the stack

Message permanent page


For an object it may not be very ordered, but for an array you are traversing it's nodes in reverse order

— Huh

— I just usually don't have the need to diff or clone objects...

— Hrm

— Object.assign({}, obj); just werks

— Since I am (rewriting from scratch now) making a flux framework, it needs data diffing and cloning

— I could just use an existing module but that wouldn't be very fun would it :P

— Kek

— I have needed cloning

— When I want to keep immutable data and return a modified instance

— This algo does a deep clone, recreates cycles and multiple refs