gpt4 book ai didi

javascript - 根据值数组从 Angular 中的 JSON 中过滤选择

转载 作者:行者123 更新时间:2023-12-02 14:31:14 27 4
gpt4 key购买 nike

所以我的数据集看起来像这样(背后有更多统计数据,但让我们保持简单):

$scope.peopleData = [
{"name": "Name1", "img": "name1Img.png"},
{"name": "Name2", "img": "name2Img.png"}...
];

通过一个简单的方法就可以很好地显示所有项目:

<div ng-repeat="person in peopleData">
<img src="img/people/{{person.img}}" alt="{{person.name}}" />
</div>

现在假设我正在存储 friend ,并且有一个仅列出特定人员的不同部分。以一个数组为例:

var friends = ["Name4", "Name9"];

我将如何编写一个返回的函数:

$scope.friends = [
{"name": "Name4", "img": "name4Img.png"},
{"name": "Name9", "img": "name9Img.png"}...
];

本质上,我想搜索所有 peopleData 并根据数组中包含的多个值返回一个较小的数组?

肯定有一个简单的方法来使用 .filter() 来查找多个字符串作为可接受的值吗?

$scope.friendData = peopleData.filter(friends);

我想我只是错过了一小部分......

最佳答案

Use Array#filter with Array#indeOf to test the value in array

var friends = [{
"name": "Name4",
"img": "name4Img.png"
}, {
"name": "Name9",
"img": "name9Img.png"
}, {
"name": "Name10",
"img": "name10Img.png"
}];
var friendsArr = ["Name4", "Name9"];
var friendData = friends.filter(function(item) {
return friendsArr.indexOf(item.name) !== -1; //`item.name` exists in `friendsArr`
});
console.log(friendData);

关于javascript - 根据值数组从 Angular 中的 JSON 中过滤选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37805964/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com