首页 > 解决方案 > if 语句,第一个条件的值在第二个条件的范围内,但它返回第一个条件

问题描述

我正在使用 C=0 抽样计划创建一个 QA 抽样计算器。每当我输入任何数字并尝试时,我提供的结果都对应于不同范围的结果。

const sample = parseFloat(this.sampleSize)
const lot = parseFloat(this.lotSize)

if (aqlSelector.value == 0.010) {
    if (this.sampleSize > 0 || this.sampleSize <= 1200) {
        lotQty.innerText = 'All'
        console.log(sample)
        console.log(lot)
    } else if (this.sampleSize >= 1201) {
        lotQty.innerText = '1250'
    }
} 

尝试不同方法后的代码 我得到的结果

整个项目的 Codepen:https ://codepen.io/cesar-higashi/pen/LYbPwaJ

标签: javascript

解决方案


您使用了错误的逻辑运算符 if (this.sampleSize > 0 || this.sampleSize <= 1200) ,应该是 if (this.sampleSize > 0 && this.sampleSize <= 1200)

对于您的||(或),它首先返回每个大于 0 的值


推荐阅读