我曾经在jQuery中这样克隆一个变量:
var clone = $.extend(true, {}, orig);
在Ember.js中是否有与此相当的方法?
我曾经在jQuery中这样克隆一个变量:
var clone = $.extend(true, {}, orig);
那就像是jquery中我最不喜欢的方法名称。每次我想合并两个对象时,都需要花费几秒钟来考虑它叫什么。在Ember中,你也可以使用assign
。
Ember.assign({first: 'Tom'}, {last: 'Dale'}); // {first: 'Tom', last: 'Dale'}
var a = {first: 'Yehuda'}, b = {last: 'Katz'};
Ember.assign(a, b); // a == {first: 'Yehuda', last: 'Katz'}, b == {last: 'Katz'}
或者在你的情况下
Ember.assign({}, orig);
http://emberjs.com/api/classes/Ember.html#method_assign
但是请注意,它不像copy方法一样支持深度克隆。