You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JavaScript变量范围判断条件异常:符合范围却返回false?

问题分析与修正

你的条件判断逻辑完全错误,导致永远无法返回true:

  • 你对nb1的判断写成了nb1 >=30 && nb1 <=40 && nb1 >=60 && nb1 <=80,这要求一个数同时处于30-40和60-80两个不重叠的区间,根本不可能实现
  • 同理nb2的判断也犯了同样的错误,要求它同时落在两个互不相交的区间里,自然也不可能满足

正确的逻辑应该是:nb1处于30-40区间 并且 nb2处于60-80区间。

修正后的基础代码:

let nb1 = 35;
let nb2 = 65;

if( (nb1 >= 30 && nb1 <= 40) && (nb2 >= 60 && nb2 <= 80) ){
  console.log(true);
} else {
  console.log(false);
}

如果需要额外验证变量是否为整数,可以在条件中补充整数判断:

let nb1 = 35;
let nb2 = 65;

if( Number.isInteger(nb1) && nb1 >= 30 && nb1 <= 40 && Number.isInteger(nb2) && nb2 >= 60 && nb2 <= 80 ){
  console.log(true);
} else {
  console.log(false);
}

内容的提问来源于stack exchange,提问作者anais_stemb

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 01:50:25