cbd*_*per 3 javascript conditional function
题
有没有办法return在三元运算符内部执行语句?
这是一件奇怪的事情,因为我觉得三元组就像if/else的简写,你可以return在if/else 中执行语句。
但出于某种原因,我无法return在三元运算符中执行语句:
常规 IF/ELSE:
// THIS WORKS
function foo() {
if (true) {
console.log('This is true');
} else {
console.log('Not true');
}
}
Run Code Online (Sandbox Code Playgroud)
三元作为 IF/ELSE:
// THIS ALSO WORKS
function bar() {
true ?
console.log('This is true')
: console.log('Not true');
}
Run Code Online (Sandbox Code Playgroud)
上面的两个代码都可以正常工作。但是当涉及 return 时,会发生以下情况:
带返回的常规 IF/ELSE:
// THIS WORKS
function foo() {
if (true) {
console.log('This is true');
} else {
return;
}
}
Run Code Online (Sandbox Code Playgroud)
三元作为 IF/ELSE 并返回:
// THIS DOESN'T WORK
function bar() {
true ?
console.log('This is true')
: return;
}
Run Code Online (Sandbox Code Playgroud)
关于可能的重复:
我环顾四周,没有找到这个确切问题的答案。
我很清楚我可以返回一个三元运算符,就像下面的一段代码,但这不是这个问题的内容。
function foo() {
return(
true ?
console.log('This is true')
: null
);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1137 次 |
| 最近记录: |