问题描述
- js 如何获取引用传递的值
-
复杂类型如Object的传递是引用传递,如何获得相同值的独立的一份拷贝呢?
解决方案
如果不包含函数,可以JSON.stringify转为字符串,在JSON.parse刚才生成的字符串得到,否则就要for深度拷贝http://snandy.iteye.com/blog/842097
解决方案二:
遍历原型链prototype,如果对象里面还有对象,就需要深层复制。
然后将prototype的属性和值分别赋给新对象,这样操作才不会改变原有对象属性的值,而且也保留了源对象的信息,
对象内部没有在原型链上的方法或者变量,则原型链复制就是不可见的,这样的可以用源对象的构造器构造新对象,保持私有属性的可用。
希望可以帮到你。
解决方案三:
刚刚找到一个简单的方法,Jquery的 clone()
不知道是否对所有对象都有效
解决方案四:
js 原始值和引用传递
js数组引用传递
JS获取页面传递(REQUEST)值
解决方案五:
JSON.stringify(objcet)
然后在再转回对象,对性能影响其实蛮大的。
时间: 2024-09-04 06:15:41