在angularJS中,我如何通过一个对象中的变量并将它们设置为等同于另一个对象的同名变量?

时间:2015-07-15 15:56:09

标签: angularjs

我觉得这可能涉及字符串和forEach语句?我对角度很新,但基本上我想做的是:

我有两个对象,其中对象1中的每个变量都在对象2中,但是对象2具有比对象1更多的变量。我需要将两个共享的所有值设置为相等。

我的猜测可能是使用forEach并将其变量的名称设置为字符串,然后将Object2.nameOfVariable设置为等于迭代器当前所在的项目的对象1?

这是一个在我脑海中有意义的模型,但我对forEach的理解不足,因此这不起作用:

(在工厂里)

loadValues: function(object1, object2) {
      object1.forEach(item){
        var varName = angular.toString(item);
        object2.varName = item;
      }
      return object1;
    },

1 个答案:

答案 0 :(得分:1)

循环object1并将其值设置为object2值:

for (var prop in object1) {
    if (object2.hasOwnProperty(prop)) {
        object1[prop] = object2[prop];
    }
}