Javascript一行,否则速记混淆

Javascript one line if else shorthand confusion

本文关键字:一行 Javascript      更新时间:2023-09-26
var type = ''; // type is from somewhere
if(type == 'a'){
type = 1;
}else{
type = 2;
}

如果使用JS速记的else语句,如何简化上面的语句?

我不确定你说的"JS速记"是什么意思,但也许你正在寻找三元条件运算符?

type = (type == 'a') ? 1 : 2;

您可以使用三元运算符(也称为条件运算符(、内联 if (iif( 或三元 if。在您的示例中,这如下所示:

type = type == 'a' ? 1 : 2;

关于维基百科的更多信息: http://en.wikipedia.org/wiki/%3F:

你有更多的选择,而不仅仅是一个三元,特别是考虑到1不是

type = {'a': 1}[type] || 2;