javascript - 与对象数组进行比较并更新 Angular 中的键

标签 javascript angularjs arrays

如果两个数组中都存在某个对象,如何比较两个对象数组并更新键?

$scope.listOne = [
  {id: 1, selected: false},
  {id: 2, selected: false},
  {id: 3, selected: false}
];

$scope.listTwo = [
  {id: 4, color: orange},
  {id: 5, color: blue},
  {id: 2, color: green}
];

使用上述对象,如何比较它们并将 listOne[1].selected 更新为 true?

最佳答案

在这里,我试图循环遍历 listone 并检查 listtwo 中是否有这样的键,如果有,则使 listone 的选定属性为 true

这是用普通的 javascript 完成的

var listOne = [{
  id: 1,
  selected: false
}, {
  id: 2,
  selected: false
}, {
  id: 3,
  selected: false
}];

var listTwo = [{
  id: 4,
  color: "orange"
}, {
  id: 5,
  color: "blue"
}, {
  id: 2,
  color: "green"
}];



angular.forEach(listOne, function(value) {
  for (var key in listTwo) {
    if (listTwo[key]["id"] == value.id) {
      value.selected = true;
    }
  }
});
console.log(listOne);
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>

希望这有帮助

关于javascript - 与对象数组进行比较并更新 Angular 中的键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40510798/

相关文章:

javascript - 无法在react-native中加载图像

javascript - 使用调度程序进行 Redux 表单异步验证

javascript - 从元素 : angularjs 动态取消绑定(bind) ng-click

javascript - 如何在使用 ng-options 创建的 html 下拉列表中设置默认值

javascript - 如何更改 ng-view

java - 二维数组空指针异常错误

javascript - 如何使用 jQuery 实现从一张图片到另一张图片的过渡效果?

javascript - d3 中的 Lambert 圆锥共形投影

java - 如何实现打印下一个较小元素的索引的方法(在java中)?

php - 将多维数组保存到mysql数据库中