Javascript 为什么';如果条件正确,顺序是否工作?
我试着在一个输入范围内,每5个值加上10个单位,一切都正常,但由于某种原因,5对6的值加上10个,然后一切正常 它现在是如何工作的:0(0)、1(0)、2(0)、3(0)、4(0)、5(10)、6(20)、7(20)。。。10(20)等 它应该如何工作:0(0)、1(0)、2(0)、3(0)、4(0)、5(10)、6(10)、7(10)。。。10(20)等Javascript 为什么';如果条件正确,顺序是否工作?,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我试着在一个输入范围内,每5个值加上10个单位,一切都正常,但由于某种原因,5对6的值加上10个,然后一切正常 它现在是如何工作的:0(0)、1(0)、2(0)、3(0)、4(0)、5(10)、6(20)、7(20)。。。10(20)等 它应该如何工作:0(0)、1(0)、2(0)、3(0)、4(0)、5(10)、6(10)、7(10)。。。10(20)等 $(文档).ready(函数(){ $(“.in_objem”).on('input',function(){ $(“.range指示符”
$(文档).ready(函数(){
$(“.in_objem”).on('input',function(){
$(“.range指示符”).text($(this.val());
});
$(“.in_nagrev”).on('input',function(){
$(“.nagrev指示器”).text($(this.val());
});
$(“.in_objem,.in_nagrev”).on('input',function(){
var-elem=0;
var价格=0;
$(“.in_objem,.in_nagrev”)。每个(函数(){
var b=$(this.val()/5;
var计数=0;
如果(b>=1)
{
对于(变量i=0;i
1单元1
1单元2
工作
寒冷
自动的
常见的
总数:
您的代码之所以这样工作,是因为您给了b值var b=$(this).val()/5代码>然后用你的代码从0到b
如果您的值为6,则比b=6/5
,这实际上是1.2
而不是1
因此,在您的for
中,i
首先是0
,低于1.2
,然后是1
,仍然低于1.2
。如果您想简单地解决问题,只需使用b=Math.floor($(this.val()/5;)
,它“返回小于或等于给定数字的最大整数”
<>但是我不得不说你的代码很难阅读,所以你可能想考虑可读性和效率问题。可以对你的问题做更多的阐述,这真的很混乱。<代码> var b= $(this).Var()/ 5;<代码>我想你应该使用floor或mod,因为你会得到小数,这就是为什么你会看到奇怪的东西。非常感谢!