如何在JavaScript中使用内联if语句?也有内联else语句吗?
就像这样:
var a = 2;
var b = 3;
if(a < b) {
// do something
}
如何在JavaScript中使用内联if语句?也有内联else语句吗?
就像这样:
var a = 2;
var b = 3;
if(a < b) {
// do something
}
当前回答
(条件)?expressionTrue: expressionFalse;
例子
int a=20, b=10;
if (a>b) {
cout << "a greater than b";
} else {
cout << "b greater than a";
}
你可以简单地写:
int a=20, b=10;
(a>b) ? cout << "a greater than b" : cout << "b greater than a";
其他回答
有一个三元运算符,像这样:
var c = (a < b) ? "a is less than b" : "a is not less than b";
内联如果:
(('hypothesis') ? 'truthy conclusion' : 'falsey conclusion')
真结论:当假设为真时执行的陈述
谬误结论:当假设为假时执行的陈述
你的例子:
var c = ((a < b) ? 'a<b statements' : '!(a<b) statements');
Inline if在JavaScript中很简单,不需要大括号:
if (a < b) doSomething()
从技术上讲,你可以在同一行中有一个else,但它需要一个分号:
if (a < b) doSomething(); else doSomethingElse()
您的团队的编码标准可能不需要上面的示例。最重要的是你要遵循适合你的团队的惯例。就我个人而言,在许多情况下,我更喜欢if语句而不是三元语句,因为我发现它们更容易阅读。
用简单的英语,语法解释如下:
if(condition){
do_something_if_condition_is_met;
}
else{
do_something_else_if_condition_is_not_met;
}
可以写成:
condition ? do_something_if_condition_is_met : do_something_else_if_condition_is_not_met;
我经常需要在每个条件下运行更多的代码,通过使用:(,,)多个代码元素可以执行:
var a = 2;
var b = 3;
var c = 0;
( a < b ? ( alert('hi'), a=3, b=2, c=a*b ) : ( alert('by'), a=4, b=10, c=a/b ) );