javascript - AngularJS 检查条件并返回 true 或 false

标签 javascript html arrays angularjs

我有这样的 html:

<td><span ng-if="isuser(user) == false" type="button" >not allowed</span> </td>

只有当函数 isuser(user) 返回 false 时,才会显示上面的 html。

我有一个这样的数组:

$scope.list = ["456", "111", "459"];

现在用户对象有一个名为 id 的数组。此 id 数组包含一个 number 键,其值可以是 456111459 有时它也可能是

用户对象:

{"name":"pravin","status":"Live","id":[{"number":"111"}],"msg":"test"}

这是 isuser 函数:

$scope.isuser = function(user) {
  for (var i = 0; i < $scope.list.length; i++){
  var exists = user.id.find(({number}) => number === $scope.list[i]);
  }
if (exists)
  return true;
else
  return false;
};

但这总是返回 false。

我希望 for 循环检查列表数组中是否不存在数字键的值,然后只返回 false。 我该怎么做?

最佳答案

问题是下面的语句

var exists = user.id.find(({number}) => number === $scope.list[i]);

每次 exists 变量时更新,您总是会得到最后的更改。

一种方法是通过传递一个回调函数作为参数来使用some方法。

$scope.isuser = function(user) {
   var exists = user.id.some(({number}) => $scope.list.includes(number));
   return exists;
}

关于javascript - AngularJS 检查条件并返回 true 或 false,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54177524/

相关文章:

JavaScript 目标。

html - 托管应用程序后不显示图像,不应用css

javascript - 如何显示 Elements 数组的对象类型

javascript - 如何向 javascript/jQuery 对象添加变量?

javascript - 如何在浏览器中的 javascript 中获取元素的可访问名称?

javascript - request.session.regenerate 不起作用,未定义 'undefined'

调用结构数组,是否返回指针数组?

javascript - 如何使用 dxAction dxButton 返回主页?

css - 什么是 HTML5 等同于表格单元格中的对齐属性?

c++ - 类函数中数组的长度