📜  如何在数组 angularjs 中查找元素 - Javascript (1)

📅  最后修改于: 2023-12-03 15:09:02.436000             🧑  作者: Mango

如何在数组 angularjs 中查找元素 - Javascript

在 AngularJS 中,可以使用内置的 filter 过滤器来查找数组中的元素。

示例
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
  $scope.names = [
    {name:'John',country:'Norway'},
    {name:'Peter',country:'Sweden'},
    {name:'Lucy',country:'Denmark'},
    {name:'Mark',country:'Denmark'}
  ];
});

假设我们有一个名为 names 的数组,其中包含多个叫做 Mark 的人。我们可以使用以下方式查询数组:

app.filter('getByName', function() {
  return function(names, name) {
    var i, len;
    for (i = 0, len = names.length; i < len; i++) {
      if (names[i].name === name) {
        return names[i];
      }
    }
    return null;
  };
});

<div ng-controller="myCtrl">
  <ul>
    <li ng-repeat="name in names | filter:getByName('Mark')">
      {{name.name}} ({{name.country}})
    </li>
  </ul>
</div>

getByName 过滤器将接受两个参数:第一个是要过滤的数组,第二个是要查找的名称。它将返回一个匹配到的对象,或者返回 null

总结

在 AngularJS 中,通过使用内置的过滤器,我们可以轻松地查找数组中的元素。以上是一个简短的示例,通过使用这些技巧,开发者可以构建更加高效和功能齐全的应用程序。