JavaScript获取三元';s条件算子

JavaScript获取三元';s条件算子,javascript,ternary-operator,Javascript,Ternary Operator,[不确定如何准确地表达这个问题,但]说我有一些代码: var myValue = 6; var newValue = myValue == 6 ? myValue : 3; 请注意,我正在使用三元运算符检查变量是否满足某个条件,如果满足,则将newValue设置为该变量,如果不满足,则设置其他值 所以(轻微的)问题是: 在这种情况下,我实际上必须写两次变量名(myValue==6?myValue:…),这通常不是问题,但假设我有一个很长的变量名,或者甚至是某个数组的属性,或者其他我不想手动写出

[不确定如何准确地表达这个问题,但]说我有一些代码:

var myValue = 6;
var newValue = myValue == 6 ? myValue : 3;
请注意,我正在使用三元运算符检查变量是否满足某个条件,如果满足,则将newValue设置为该变量,如果不满足,则设置其他值

所以(轻微的)问题是:

在这种情况下,我实际上必须写两次变量名(myValue==6?myValue:…),这通常不是问题,但假设我有一个很长的变量名,或者甚至是某个数组的属性,或者其他我不想手动写出的东西,或者甚至是一个新变量;我只想将新变量设置为条件中变量的值

如果我的条件是如果表达式存在,那么我显然可以:

newValue = myValue || 3;

但是如果我要检查任何其他条件,我必须写两次检查变量,那么有没有办法访问三元的条件文本,至少,或者甚至是条件中涉及的一系列变量,所以我有希望访问它,或者有没有其他方法来做这样的单行条件,不指定新变量?

如果它只是一个变量名,我就不必担心写两次——这是最可读的选项。如果它是某种类型的嵌套属性,最好保持干燥并首先将其提取到变量中。@CertainPerformance可能是,但我通常喜欢在一行中执行操作。/一个表达式不将其设置为变量。如果您担心阅读和理解代码,然后,您可以将支票提取到变量中。例如,
myValue==6
可能意味着很少(除了它是一个说明性示例之外),因此您可以将其提取到
isCorrect=myValue==6
中,并将其放在三元格式中,这意味着它更具可读性。你甚至可以用一个稍微虚构的例子来描述它,比如
isRevolverFullyLoaded=bulletinthehamberofrevolver==6
,创建另一个名称很短的变量是一种方法。重复?如果它只是一个变量名,我就不用担心写两次了-这是您拥有的最可读的选项。如果它是某种类型的嵌套属性,最好保持干燥并首先将其提取到变量中。@CertainPerformance可能是,但我通常喜欢在一行中执行操作。/一个表达式不将其设置为变量。如果您担心阅读和理解代码,然后,您可以将支票提取到变量中。例如,
myValue==6
可能意味着很少(除了它是一个说明性示例之外),因此您可以将其提取到
isCorrect=myValue==6
中,并将其放在三元格式中,这意味着它更具可读性。你甚至可以用一个稍微虚构的例子来描述它,比如
isRevolverFullyLoaded=bulletinthehamberofrevolver==6