Published at February 22, 2020 · 1 min read
在 Javascript 中当操作 iterator 对象时,不能对当前对象进行增删改操作,若修改,则当前对象则发生了变化,因此需要用到深度拷贝,新建一份后,并对原对象进行操作。 在 Javascript 这类动态语言默认情况下赋值操作均为浅拷贝,也就是只是在内存中建立对源对象建立引用,当原对象改变时,新赋值的仍然会收到影响。所以,这里凸显到了深拷贝的重要性。 针对 dictionary 需要 new_obj = JSON.parse(JSON.stringify(oldobj)) Array 则需要 new_obj = [...oldobj] https://scotch.io/bar-talk/copying-objects-in-javascript...