我试图更新角度forEach内部的外部变量。这是代码。

var resultMap = {};
angular.forEach(originalMap, function(value, key) {
   resultMap[key] = value;
  }, resultMap);
console.log(resultMap);


即使执行forEach块后,也不知道为什么resultMap为空。我在这里有什么事吗?

更新-
为了简单起见,我在这里没有提到整个代码。在forEach内部,我将编写一些条件来填充resultMap。

最佳答案

您正在尝试克隆对象,因此请使用angular.copy代替angular.forEach

var resultMap  = angular.copy(originalMap);


如果您仍然想使用for-each

angular.forEach(originalMap, function (value, key) {
      this[key] = value; //change resultMap to this
  }, resultMap);

10-06 08:23