That's a clean way to improve the depths of the copy, but it once again falls short when the object nesting goes down 3 levels instead of 2. To resolve that, you'd have to do a manual deep copy (in whatever succinct way).
The performance of the parse(stringify(x)) approach is notably not that bad, particularly compared to a deep copy (although the former of course copies only data, not functions). For example: jsperf.com/deep-copy-vs-json-strin...
Tests were very helpful. Although I am not intending to run the copy more than once a restart of the app. So this works for me.
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.