javascript - OR javascript 的单选按钮问题

标签 javascript radio-button operator-keyword

有人可以帮助我理解 JavaScript 中 OR 运算符的正确语法吗?我正在使用||在我的脚本中但不起作用。我有一个包含 4 个值的单选按钮列表。我希望下拉列表在值 2 或 3 上可见。我可以让它在单个值 2 上正常工作,但当我添加 || 时没有骰子。 3.有人可以建议吗?提前致谢。

    function ShowConvert() {
        if (radConvert.GetValue() == 2 || 3) {
            frmActivate.GetItemByName("ConvertHide").SetVisible(true);
        }
        else {
            frmActivate.GetItemByName("ConvertHide").SetVisible(false);
        }
    };

最佳答案

当您在 JavaScript 中使用 || 运算符时,您实际上将 if 语句拆分为两个单独的语句进行计算。如果其中任何一个为 true,则 if 语句的计算结果为 true。让我们看看您的情况:

if (radConvert.GetValue() == 2 || 3) {

首先,JavaScript 将查看 || 运算符之前的部分,并查看其计算结果是否为 true

radConvert.GetValue() == 2

在本例中,假设这不是 true - GetValue() 没有返回 2。因为该语句的计算结果为 false,所以 javascript 现在需要查看 if 条件的后半部分。

看看 || 运算符的另一边,javascript 只看到 3。 Javascript 将此视为“真实”值。由于您实际上并未将 3 与任何内容进行比较,因此 JavaScript 必须决定 3 是否应该等于 true 还是 false。规范规定 3 为 true,因此 if 语句作为一个整体计算结果为 true,并且语句中的代码将运行。

最简单的解决方法是在 || 运算符两侧调用您的方法 -

if(radConvert.GetValue() == 2 || radConvert.GetValue() == 3) {
    ...
}

关于javascript - OR javascript 的单选按钮问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32863894/

相关文章:

JavaScript While 循环为数组中的第一个字母返回 "undefined"

javascript - 如何在 `node-mysql` 查询中获取结果的值

javascript - mongodb 中带有投影字段的嵌套数组聚合查询?

javascript - 如何以编程方式刷新 jQuery Mobile 中的一组单选按钮?

mfc - 如何使用 MFC 对对话框进行多行 radio 控制

javascript - 如何将秒转换为 HH :mm to HH:mm:ss in moment. js

java - Swing 单选按钮小程序故障排除

c++ - 我类的析构函数做错了吗? C++

c - 应该吗?运算符被更频繁地使用?

C# + 运算符默认为字符串 + 对象