提问人:user7370387 提问时间:4/12/2017 最后编辑:user7370387 更新时间:4/12/2017 访问量:227
在函数中返回 0 到 n 个数组值
Return 0 to n arrays values inside a function
问:
我有一个非常复杂的问题。
我有这个动态数组,其中可能包括 0 到 -> n 个值:
这是一个例子:
var array =[2,3,8];
这是第二个例子:
var array =[2,3,8,15,25];
现在,我需要执行这个函数(由 stakoverflower 轻轻地给出),但我不知道如何每次考虑每个值;它目前是一个静态函数,运行良好:
var filteredList = $filter('filter')($scope.footballers, function (i) {
return (i.identifiant === 2 || i.identifiant === 3 || i.identifiant === 8);
});
但是看,它适用于第一个数组示例,但不适用于第二个数组示例。
如果我想处理第二个数组,我需要输入以下内容:
var filteredList = $filter('filter')($scope.footballers, function (i) {
return (i.identifiant === 2 || i.identifiant === 3 || i.identifiant === 8 || i.identifiant === 15 || i.identifiant === 25);
});
我的问题是:如何在 $filter 函数中添加一个 for 循环,以便能够处理第二个数组或数组的任何长度?
如果您有想法,非常感谢。然后循环会自动键入 i.identifiant === array[0]、i.identifiant === array[1] 等等!
我从来没有遇到过这种情况,我真的不知道如何返回动态长数组!
这也适用于第一个示例:
var filteredList = $filter('filter')($scope.footballers, function (i) {
return (i.identifiant === array[0] || i.identifiant === array[1] || i.identifiant === array[2]);
});
但是,如果我的数组包含 12 个值,我该怎么办???我需要一个循环,但我根本不知道该怎么做!
然后,循环应该键入“i.identifiant === array[x]”
哎呀,我忘了,我的目标是使用 angularjs 显示数组“数组”中存在标识符的足球运动员列表。拖放应用程序。这就是我过滤的原因,$scope.footballers 里面有大量的标识符,但我只想保留一些,那些出现在数组中的标识符!问题是数组“array”可能包含 2 个值以及 25 个值。
我在想一个内部或末尾带有 eval() 的循环?
答:
好的,JB Nizet 给了我答案,非常感谢,它高于我的水平,但它正在工作,太好了!
如果你对我的Labo感到好奇,它就在这里:
http://nicolash.org/football/#/liste
有好的一天
解决了逆问题:是否可以通过包含在另一个数组中来过滤 angular.js?
最后得到了那个反函数:
$scope.footballers = $filter('filter')($scope.footballers, function (i) {
return presence_equipe.indexOf(i.identifiant) === -1
});
多谢!!
评论
上一个:Mysql获取随机用户名
评论
return array.indexOf(i.identifiant) >= 0