如何使用AngularJS过滤器获取数组索引

时间:2019-02-15 21:57:02

标签: javascript angularjs

我得到了这个过滤器:

6

并获得了userInfo对象。无论如何,我可以找出userArray的哪个数组索引。 谢谢

2 个答案:

答案 0 :(得分:0)

在文档之后,您可以看到可以使用函数代替对象{userId:userId}。 https://docs.angularjs.org/api/ng/filter/filter#filter-arguments

现在您的代码应等效于以下内容:

userInfo = $filter('filter')(userArray, function(element, index) {
    if (element.userId == userId) return true;
});

请注意,添加到过滤器的函数包含所需的索引。

您可以更改函数以使用该索引,但是请记住,必须仅对要通过过滤器的元素返回true。

答案 1 :(得分:0)

您可以在angularjs中使用ES6语法,波纹管函数将返回索引

let x = [{ userId: "22", name: "qito" }, { userId: "123dd", name: "disp" }, { 
userId: "sad111", name: "tadt" }]
index = x.findIndex(x => x.userId == "123dd");
console.log(index);