JavaScript:是否允许在 `ternary` 语句中使用 `if` 语句?

标签 javascript if-statement ternary-operator

<分区>

在下面的脚本中,我在 if 语句的 else if 部分使用了 ternary 语句,将两者并列。在这种情况下,我是否应该在 else if 中替换另一个 if 语句?

var attackOpt = prompt('Which attack option does Angelo use in this turn?');

// Remaining number of times Angelo can cast spells:
var angMP = 3;


// Validity Check to see if the attack option entered can be executed:
while (true) {

        if (attackOpt === 'slash') {
            break;
        }

        else if (attackOpt === 'magic') {
            (angMP) ?
                 break;
                : attackOpt = prompt('Angelo can no longer cast spells. Select again.');
        }

}

最佳答案

是的,它会起作用,但会使代码难以阅读。考虑修改您的“while”循环:

while (attackOpt !== 'slash' && angMP) {
   attackOpt = prompt('Angelo can no longer cast spells. Select again.');
}

当然,这是一种风格选择,完全取决于您。

关于JavaScript:是否允许在 `ternary` 语句中使用 `if` 语句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34324352/

相关文章:

javascript - 通过在下拉菜单中选择不同的选项来更改图像 - Javascript/Html

c# - 条件(三元)运算符中的条件

javascript - 这个filterSystem函数有什么问题

javascript - 套接字未连接到 Angular-Firebase 以获得实时更新

javascript - 在响应式网格中动态调整图像大小

javascript - 我不知道如何做出两个选择然后显示你的选择是什么

Java 方法未在 if 语句中求值

c# - C# 中的三元运算符

c# - 条件运算符?

Javascript 将字符串转换为函数调用