如何检查数组对象是否在AngularJ中包含一个字符串



这是我的代码,我想检查数组是否包含此特定的字符串" sistericon"。我正在寻找一个线代码作为解决方案,我只想检查是否条件。

 $scope.profileImageOptions = [
                      {
                Type: "Identicon",
                Code: "identicon"
            },
            {
                Type: "MonsterID",
                Code: "monsterid"
            },
        ];
    if($scope.profileImageOptions.indexOf($rootScope.settings.defaultImage) >-1)
{
    console.log('ok');
    }

您可以将includes方法与some方法组合使用。

some方法接受为参数A callback提供的功能,该功能适用于array中的每个项目。

profileImageOptions = [
            {
                Type: "Identicon",
                Code: "identicon"
            },
            {
                Type: "MonsterID",
                Code: "monsterid"
            },
];
var exist=profileImageOptions.some(function(item){
  return item.Type.includes("Identicon");
});
console.log(exist);

另外,您可以使用arrow function简化代码。

profileImageOptions.some(item => item.Type.includes("Identicon"))

var arr = [
                      {
                Type: "Identicon",
                Code: "identicon"
            },
            {
                Type: "MonsterID",
                Code: "monsterid"
            },
        ];
var result = arr.some(element => element.Type.includes('Identicon'));
console.log(result)

让我们在JavaScript中使用一些:

$scope.profileImageOptions.some(element => element.Type.includes('Identicon'));

您可以像下面的那样做:

<!DOCTYPE html>
<html>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<body>
<div ng-app="myApp" ng-controller="personCtrl">
<p>The name is {{ result[0].Type == "Identicon" ? "OK" : "Not OK"}}</p>
</div>
<script>
angular.module('myApp', []).controller('personCtrl', function($scope) {
$scope.profileImageOptions = [
                      {
                Type: "Identicon",
                Code: "identicon"
            },
            {
                Type: "MonsterID",
                Code: "monsterid"
            },
        ];
        $scope.result = $scope.profileImageOptions.filter(function(res){
        return res.Type ==  "Identicon";});
});
</script>
</body>
</html>

检查示例

相关内容

最新更新