只是想知道angular.copy()
与$jquery.extend(true, {}, obj)
之间是否存在差异?
根据docs.angularjs.org/api/ng/function/angular.copy和api.jquery.com/jquery.extend,两者似乎都在进行深度克隆,但jquery的方法似乎要快得多。
有什么建议吗?
答案 0 :(得分:3)
jQuery的$.extend()
允许您有条件地将键值对添加到扩展对象。
var sourceObj = { foo: 'bar' };
var destObj = $.extend(sourceObj, { added: 'addedProp'});
destObj等于:
{foo: "bar", added: "addedProp"}
我最近发现的另一个不同之处是,angular.copy
会忽略一个名为$$hashKey
的属性,Angular会在内部添加ng-repeat
内的对象。