Javascript 对于每个,如果未找到,则发出警报

Javascript 对于每个,如果未找到,则发出警报,javascript,jquery,Javascript,Jquery,我在做一个简单的条形码系统。它所做的是循环通过一个json字符串,找到匹配的EAN代码。如果这样做,它将根据产品添加产品。然而。如何更改代码,以确定EAN是否在JSON字符串中无效/找到。我想下面会解决这个问题。但事实并非如此。如果EAN是有效的,它就会工作。但是如果找不到EAN,我需要做一些其他的事情 编辑(完整JS) var=”; $(文档).ready(函数(){ var=false; var chars=[]; $(窗口)。按键(功能(e){ 如果(e.which>=48&&e.whi

我在做一个简单的条形码系统。它所做的是循环通过一个
json字符串
,找到匹配的EAN代码。如果这样做,它将根据
产品添加产品。然而。如何更改代码,以确定EAN是否在JSON字符串中无效/找到。我想下面会解决这个问题。但事实并非如此。如果EAN是有效的,它就会工作。但是如果找不到EAN,我需要做一些其他的事情

编辑(完整JS)


var=”;
$(文档).ready(函数(){
var=false;
var chars=[];
$(窗口)。按键(功能(e){
如果(e.which>=48&&e.which=9){
条形码=字符连接(“”);
控制台日志(“条形码扫描:+条形码”);
$(“#条形码”).myfunction(条形码);
}
字符=[];
按下=假;
},500);
}
按下=真;
});
});
var search_json=;
(函数($){
var match=“否”;
$.fn.myfunction=功能(条形码){
$.each(搜索、函数(i、v){
如果(v.ean==条形码){
警报(v.qty+‘of’+v.product+‘added’);
match=“是”;
返回;
}
});
如果(匹配=“否”){
警报(“未找到EAN”);
}
归还这个;
}; 
})(jQuery);

我建议使用一个简单的查找。我假设搜索json是这样一个对象数组

var jsonList = [ { ean: 1 }, { ean: 2 } ];
var barcode = 1;
var match = jsonList.find(obj => obj.ean === barcode);

希望这有帮助。

您是如何使用它的?扩展
$没有意义。fn
使用一个似乎与domI无关的函数,使用第二个函数记录条形码/ean代码,然后调用此函数,传递条形码值,提供一个。也许写你所拥有的东西的更好方法,但它仍然应该根据你如何称呼它而起作用。。。仍然不清楚它为什么要扩展
$。fn
在上面添加了完整的JS。那么您希望它做什么不同的事情呢?注意:每次都需要重置
var match
,我认为您在按下
时也会遇到类似的问题。在名为repeatedlynote的get中使用的函数中声明局部变量,注意
Array.prototype.find()
没有完全的浏览器支持
var jsonList = [ { ean: 1 }, { ean: 2 } ];
var barcode = 1;
var match = jsonList.find(obj => obj.ean === barcode);