Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/448.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 计算最小值时排除某些行_Javascript_Jquery - Fatal编程技术网

Javascript 计算最小值时排除某些行

Javascript 计算最小值时排除某些行,javascript,jquery,Javascript,Jquery,我有下表,我需要在该列中找到最小值 在本例中,值为20 但是,我需要排除最后两个零件名称,并使用单元格中的其余值来计算最小值。在这种情况下,最小值应为100 以下是我计算最小值的代码: 函数getMin(){ var最大值=0; jQuery(“.used”).each(函数(){ $used=jQuery(this.val(); var usedValue=$used.replace(/,/g,“”); value=parseFloat(usedValue); 最大值=(值>最大值)?值

我有下表,我需要在该列中找到最小值

在本例中,值为20

但是,我需要排除最后两个零件名称,并使用单元格中的其余值来计算最小值。在这种情况下,最小值应为100

以下是我计算最小值的代码:

函数getMin(){ var最大值=0; jQuery(“.used”).each(函数(){ $used=jQuery(this.val(); var usedValue=$used.replace(/,/g,“”); value=parseFloat(usedValue); 最大值=(值>最大值)?值:最大值; }); var min=最大值; jQuery(“.used”).each(函数(){ $used=jQuery(this.val(); var usedValue=$used.replace(/,/g,“”); value=parseFloat(usedValue); 最小值=(值<最小值)?值:最小值; }); jQuery(“.最小值”).val(最小值); }
循环
这里有一个快速而肮脏的解决方案。循环遍历每行的父对象,如果标签(文本)是这些字符串之一,则忽略used的值

我还更新了minimum函数,在值数组中使用math.min

函数getMin(){ 设VAL=[]; $(“.row”).each(函数(){ if($(this).find(“label”).html()!=“Ignore”){ $used=$(this.find(“.used”).val(); var usedValue=$used.replace(/,/g,“”); vals.push(parseFloat(usedValue)); } }); 设min=Math.min(…VAL); $(“.minimum”).val(最小值); } getMin()

忽略
保持
保持

循环
这里有一个快速而肮脏的解决方案。循环遍历每行的父对象,如果标签(文本)是这些字符串之一,则忽略used的值

我还更新了minimum函数,在值数组中使用math.min

函数getMin(){ 设VAL=[]; $(“.row”).each(函数(){ if($(this).find(“label”).html()!=“Ignore”){ $used=$(this.find(“.used”).val(); var usedValue=$used.replace(/,/g,“”); vals.push(parseFloat(usedValue)); } }); 设min=Math.min(…VAL); $(“.minimum”).val(最小值); } getMin()

忽略
保持
保持

循环
您可以这样做:在
each()
函数中排除第一列包含要排除的两个字符串中的任何一个的每个

函数getMin(){ var最大值=0; jQuery(“.used”).each(函数(){ $used=jQuery(this.val(); var usedValue=$used.replace(/,/g,“”); value=parseFloat(usedValue); 最大值=(值>最大值)?值:最大值; }); var min=最大值; jQuery(“tr”)。每个(函数(){ var check=jQuery(this.find)(“td:nth child(1)”).text(); 如果(!检查包括(“风机叶片”)和(!检查包括(“环形填料”)) { $used=jQuery(this.val(); var usedValue=$used.replace(/,/g,“”); value=parseFloat(usedValue); 最小值=(值<最小值)?值:最小值; } }); jQuery(“.最小值”).val(最小值); } getMin()

风扇叶片(26个)
环空填料(26个)

循环
您可以这样做:在
each()
函数中排除第一列包含要排除的两个字符串中的任何一个的每个

函数getMin(){ var最大值=0; jQuery(“.used”).each(函数(){ $used=jQuery(this.val(); var usedValue=$used.replace(/,/g,“”); value=parseFloat(usedValue); 最大值=(值>最大值)?值:最大值; }); var min=最大值; jQuery(“tr”)。每个(函数(){ var check=jQuery(this.find)(“td:nth child(1)”).text(); 如果(!检查包括(“风机叶片”)和(!检查包括(“环形填料”)) { $used=jQuery(this.val(); var usedValue=$used.replace(/,/g,“”); value=parseFloat(usedValue); 最小值=(值<最小值)?值:最小值; } }); jQuery(“.最小值”).val(最小值); } getMin()

风扇叶片(26个)
环空填料(26个)

循环
我会以某种方式在HTML中标记这些不同的行,比如用
排除
类。用JavaScript硬编码标签会带来麻烦

下面是一个示例,对最后两个
使用
excluded
类:

const min=Math.min(…$):未(.excluded).used').map(函数(){
返回编号($(this.val());
}).get());

我会以某种方式在HTML中标记这些不同的行,比如用
排除的
类。用JavaScript硬编码标签会带来麻烦

下面是一个示例,对最后两个
使用
excluded
类:

const min=Math.min(…$):未(.excluded).used').map(函数(){
返回编号($(this.val());
}).get());

关于这些被排除的行,是否有任何信息表明您希望它们被排除?或者您只想将它们硬编码为“最后两行”(听起来是个坏主意)?@RoboRobok它说“基于这两个字符串值”@RoboRobok不,我没有任何东西可以排除它们,因为我需要在页面上的其余计算中使用它,并且我需要只为特定列硬编码。我建议在HTML代码中添加一些东西,以某种方式标记这些行。在JS中硬编码这些名称会带来麻烦。不需要有两个循环。您可以在同一个循环中设置最小值和最大值。这些被排除的行是否有任何信息表明您希望它们被排除?或者您只想将它们硬编码为“最后两行”(听起来是个坏主意)?@RoboRobok它说“基于这两个字符串值”@RoboRobok不,我没有任何东西可以排除它们,因为我需要在页面上的其余计算中使用它,并且我需要只为特定列硬编码。我建议在HTML代码中添加一些东西,以某种方式标记这些行。在JS中硬编码这些名称会带来麻烦。没有必要