我有一个条件here第175行,如果ping大于200,我试图添加第三个条件,然后显示“ iconko”
我已经尝试过了,但是没有用
if (result != null) {
var ping = parseFloat(result[1]);
if (ping > 100.0) {
this.createPingIcon('iconslow');
}
else if (ping > 200.0) {
this.createPingIcon('iconko');
}
else {
this.createPingIcon('iconok');
}
}
答案 0 :(得分:0)
您的第一个if语句捕获所有大于100
的ping,因此也捕获了ping大于200
的情况。
您可以通过确保第一个if语句仅捕获大于100
且小于或等于200
的数字来解决此问题。
if (result != null) {
var ping = parseFloat(result[1]);
if (ping > 100.0 && ping <= 200) {
this.createPingIcon('iconslow');
} else if (ping > 200.0) {
this.createPingIcon('iconko');
} else {
this.createPingIcon('iconok');
}
}
答案 1 :(得分:0)
考虑当ping
为200时第一个条件的计算结果:
if(ping > 100.0) // 200 is greater than 100, so this is true
{
this.createPingIcon('iconslow');
}
else if(ping > 200.0) // And now this won't be checked since the previous check was true
{
this.createPingIcon('iconko');
}
只需反转条件,以便首先进行200次检查:
if(ping > 200.0)
{
this.createPingIcon('iconko');
}
else if(ping > 100.0)
{
this.createPingIcon('iconslow');
}