javascript - 用于内部 Controller 的 Angularjs 只运行一次

标签 javascript angularjs

我正在尝试存储一个 objs 数组的 ID,但是这个 for 循环似乎只运行了一次,非常奇怪

  for (var i = 0; i < softwareIds.length; i++) {
    var b = softwareIds[i].id;
  }

  console.log(b);
  console.log(softwareIds);

控制台的最后两行返回: (数字2是第一个返回最后一个obj id的console.log,第二个console.log是[Object, Object, Object])

enter image description here

我正在使用 angujarJS,它位于 Controller 内,知道吗?

最佳答案

你应该先声明数组。见下文

$scope.b = [];
  for (var i = 0; i < softwareIds.length; i++) {
      $scope.b.push(softwareIds[i].id);
  }

console.log(b);

您的 for 循环工作正常,但您每次都在覆盖存储在变量中的值。您应该将 id 值推送到数组中。

关于javascript - 用于内部 Controller 的 Angularjs 只运行一次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32212740/

相关文章:

javascript - 从 Visual Studio 2017 任务列表中排除文件夹

javascript - 模拟用户点击链接

javascript - 为 Android 构建 Ionic 时出现 "CALL_AND_RETRY_LAST Allocation failed"错误

javascript - AngularJS 路由解析获取带有 id 的 $http 数据

javascript - 使用 AngularJS Controller 的 Http 请求

javascript - 为什么控制台提供完整的 jsFiddle 链接?

javascript - 如何在 hammer.js 中按类名选择元素?

javascript - 删除多个 HTML5 视频的控件

angularjs - 了解高级框架。 Angular.js 中 Controller 、指令、CSS、服务按什么顺序执行?

javascript - 如何对 AngularJS 生成的选择列表进行预选?