JavaScript-条件和if/else之间的差异?

JavaScript-条件和if/else之间的差异?,javascript,if-statement,Javascript,If Statement,这两者之间是否有重大区别: var status = (age >= 18) ? "adult" : "minor"; 这个呢 var status; if (age >= 18) status = "adult"; else status = "minor"; 就性能而言,可能存在差异。与相比,某些浏览器使用或曾经使用if()的速度较慢:。使用当前浏览器预编译JavaScript代码的方式,这可能不再是一个问题。如果你计划做一些与旧浏览器兼容的时间关键型的东西

这两者之间是否有重大区别:

var status = (age >= 18) ? "adult" : "minor";
这个呢

var status;

if (age >= 18)
    status = "adult";
else
    status = "minor";

就性能而言,可能存在差异。与
相比,某些浏览器使用或曾经使用
if()
的速度较慢:。使用当前浏览器预编译JavaScript代码的方式,这可能不再是一个问题。如果你计划做一些与旧浏览器兼容的时间关键型的东西,这可能是需要考虑的

然而,就代码的逻辑而言,它是相同的。

加上我的两美分,这个(?:)被称为三元运算符。维基百科有一篇关于这个主题的好文章。几乎所有高级语言都支持


请参阅:

第一个是安全的,第二个只是因为不明显的错误而尖叫。请始终使用
{}
,尤其是在JavaScript中,自动插入分号可能会让您出错;不要将维基百科作为权威来源。使用Wikipedia查找权威源代码(在本例中是Javascript引用并使用它)。它是最著名的三元运算符,仅此而已。顺便说一下,这正是维基百科所说的。