比较vales并找到缺失的

在以下JSON数据中,A项在allergyfree字符串中具有“gluten”,而B项目没有。 我可以在A项目中添加

Yes

,但我还想在B项目中添加

No

,因为它在字符串中不包含“gluten”。 其他过敏症价值也是如此。

有没有办法比较循环中A项和B项之间的过敏字符串,这样如果项目具有值,例如麸质,则打印

Yes

,如果缺少,则打印

No

 [{"title":"A Item","allergyfree":"sugar,salt,yeast,wheat,gluten"},{"title":"B Item","allergyfree":"sugar,salt,starch,yeast,wheat,preservatives"}] 

码:

 $.ajax({ url: source.json, success: function (data) { var item_html; $(data).each(function (index, item) { var allergyfree = item.allergyfree; if(allergyfree.length !== 0) { allergyfree = allergyfree.split(","); $.each(allergyfree,function(i,allergy){ if (?????????????????) { $('.'+ allergy).html('

Yes

') } else { $('.'+ allergy).html('

No

') } }); } }); }, error: function () {} });

HTML

  
A Item
B Item

您可以使用$ .inArray函数返回数组中item的位置,如果item不存在则返回-1:

 if ($.inArray(alergy,allergyfree)!=-1)