[英]Pushing values in array in angularjs using array.push(val) creates deep copy or not?
使用array.push()在angularjs中的数组末尾添加值时,它会在数组内部创建推送值的深层副本。
不,您将向数组添加对原始对象的引用 ,而不是值或副本
var obj = { key: "value" }
var arr = [];
arr.push(obj);
obj === arr[0];
// true
不,深拷贝可以通过angular.copy完成。 例如。
var data = [{'name':'abc'}, {'name':'xyz'}];
var copiedOne = angular.copy(data);
在Javascript中,对象总是通过引用传递,除非您自己复制它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.