注意:Jquery或JS解析。我有一个名为“十进制”的数组,它接收11个十进制值,删除整数(例如:0.25)
如果我在我的十进制数组中运行这7个if语句,如下所示,我在“Fraction”数组中得到1个值,这就是我想要确认if()语句中的逻辑的情况是正确的。
if (Decimal[1] <= 0.125) {Fraction.push('1/8');}
if (Decimal[1] <= 0.25) {Fraction.push('1/4');}
if (Decimal[1] <= 0.375) {Fraction.push('3/8');}
if (Decimal[1] <= 0.50) {Fraction.push('1/2');}
if (Decimal[1] <= 0.625) {Fraction.push('5/8');}
if (Decimal[1] <= 0.75) {Fraction.push('3/4');}
if (Decimal[1] <= 1) {Fraction.push('7/8');}
只要将7个if语句放入for循环中,我就会在Fraction Array中得到44个值(我期待11个)。请参阅下面的代码:
for (var t = 0; t < Decimal.length; t++) {
if (Decimal[t] <= 0.125) {Fraction.push('1/8');}
if (Decimal[t] <= 0.25) {Fraction.push('1/4');}
if (Decimal[t] <= 0.375) {Fraction.push('3/8');}
if (Decimal[t] <= 0.50) {Fraction.push('1/2');}
if (Decimal[t] <= 0.625) {Fraction.push('5/8');}
if (Decimal[t] <= 0.75) {Fraction.push('3/4');}
if (Decimal[t] <= 1) {Fraction.push('7/8');}
}
答案 0 :(得分:1)
除了第一个条件之外,你还需要if语句,否则一个值可以匹配多个语句:
for (var t = 0; t < Decimal.length; t++) {
if (Decimal[t] <= 0.125) {Fraction.push('1/8');}
else if (Decimal[t] <= 0.25) {Fraction.push('1/4');}
else if (Decimal[t] <= 0.375) {Fraction.push('3/8');}
else if (Decimal[t] <= 0.50) {Fraction.push('1/2');}
else if (Decimal[t] <= 0.625) {Fraction.push('5/8');
else if (Decimal[t] <= 0.75) {Fraction.push('3/4');}
else if (Decimal[t] <= 1) {Fraction.push('7/8');}
}
答案 1 :(得分:0)
不确定你做了什么测试,但这是你需要的逻辑:
for (var t = 0; t < Decimal.length; t++) {
if (Decimal[t] <= 0.125) {Fraction.push('1/8');}
else
if (Decimal[t] <= 0.25) {Fraction.push('1/4');}
else
if (Decimal[t] <= 0.375) {Fraction.push('3/8');}
else
if (Decimal[t] <= 0.50) {Fraction.push('1/2');}
else
if (Decimal[t] <= 0.625) {Fraction.push('5/8');}
else
if (Decimal[t] <= 0.75) {Fraction.push('3/4');}
else
if (Decimal[t] <= 1) {Fraction.push('7/8');}
}
注意:最好在else区域使用{}
,但我懒得输入所有这些。