需要一些帮助来筛选响应



我有一个在应用程序中循环的函数。目前,它会查找筛选我的数组的特定应用程序编号。

var filterApplications = function(app) { return app.applicationStatus.code === 90 || app.applicationStatus.code === 100 || app.applicationStatus.code === 110 || app.applicationStatus.code === 120 || app.applicationStatus.code === 125; };

我想使用数据调用产生的数字,而不是在我的函数中对要检查的数字进行硬编码(90、100、110、120、125(。这就是这些数字在数据调用中返回的方式。

pendingAppStatuses = [90, 100];

我想让我的函数检查从我的响应中返回的数字,这些数字并不总是90或100,所以我不想硬编码这些值。

applicationResultSet = [{applicationStatus: {code: 100}},{applicationStatus: {code: 120}}, {applicationStatus: {code: 130}},{applicationStatus: {code: 150}}, {applicationStatus: {code: 170}}, {applicationStatus: {code: 220}}];

var filteredAppsArray = applicationResultSet.filter(filterApplications);

如果我理解你的问题,你只需要在过滤器中使用indexOf之类的东西,比如:

applicationResultSet.filter( app => 
pendingAppStatuses.indexOf(+app.applicationStatus.code) >-1);

let pendingAppStatuses = [90, 100];
let applicationResultSet = [{applicationStatus: {code: 100}},{applicationStatus: {code: 120}}, {applicationStatus: {code: 130}},{applicationStatus: {code: 150}}, {applicationStatus: {code: 170}}, {applicationStatus: {code: 220}}];
let filteredAppsArray = applicationResultSet.filter( app => pendingAppStatuses.indexOf(+app.applicationStatus.code) >-1);
console.log(filteredAppsArray)

最新更新