Thi*_*aga 33 angularjs angularjs-ng-repeat
$scope.data = [
{
"name": "Jim",
"id" : 25
},
{
"name": "Jerry",
"id": 27
},
{
"name": "Rithika",
"id": 20
}
];
<div ng-repeat="person in data | filter: {id:20}">
{{parent_index}}
</div>
Run Code Online (Sandbox Code Playgroud)
parent_index - 实际数组中已过滤元素的索引.
在这个例子中,parent_index应该返回2.如何找到它?
Max*_*tin 81
找到原始数组中过滤值的索引位置
试试这个:
<div ng-repeat="person in data | filter: {id:20}">
{{data.indexOf(person)}}
</div>
Run Code Online (Sandbox Code Playgroud)
输出: 2
演示 Fiddle
这是一个小辅助函数,用于根据给定的属性值在数组中查找对象的索引:
function getIndexOf(arr, val, prop) {
var l = arr.length,
k = 0;
for (k = 0; k < l; k = k + 1) {
if (arr[k][prop] === val) {
return k;
}
}
return false;
}
Run Code Online (Sandbox Code Playgroud)
例:
var arrOfobj = [
{a:1, b:1, c:1}, //index 0
{a:2, b:2, c:2}, //index 1
{a:3, b:3, c:3} //index 2
];
var index = getIndexOf(arrOfobj, "2", "a");
Run Code Online (Sandbox Code Playgroud)
上面的脚本将导致索引= 1,因为属性“ a”在数组的第二个对象中的值为2。
| 归档时间: |
|
| 查看次数: |
93506 次 |
| 最近记录: |