JavaScript三元运算符

JavaScript三元运算符,javascript,Javascript,我正试图重构这个 if(!my_var){ var new_var=100; }else{ var new_var=my_var; } 我知道我可以做类似的事情 var new_var = my_var == false ? 100 : my_var; 但我肯定我见过它做得更干净。这有点干净: let new_var = my_var || 100; 如果myu-var为false,未定义,null,,,NaN或0,则返回100,否则返回myu-var正常方式有什么问题

我正试图重构这个

if(!my_var){
     var new_var=100;
}else{
     var new_var=my_var;
}
我知道我可以做类似的事情

var new_var = my_var == false ? 100 : my_var;

但我肯定我见过它做得更干净。

这有点干净:

let new_var = my_var || 100;

如果
myu-var
false
未定义
null
NaN
0
,则返回
100
,否则返回
myu-var

正常方式有什么问题

var newVar = myVar ? myVar : 100;

你的意思是
var new\u var=100
?@Connor-那么重构后的版本与原始版本不一样,因此我认为这可能是复制粘贴错误。重构后的版本似乎来自另一个星球……我现在看得越多。我越是困惑…@jahroy-Ha,我知道我会忘记一个。我通常会去确保我不会忘记一个。。。(或链接到它)太棒了,谢谢Shawn。这正是我要找的。我想就是这样:)没问题@用户933791
my_var = (!my_var) ? 100 : my_var;