Javascript 三元运算符和或运算符的运算顺序
为什么在第一个示例中操作顺序是从右到左 这是世界性的Javascript 三元运算符和或运算符的运算顺序,javascript,conditional-operator,boolean-expression,Javascript,Conditional Operator,Boolean Expression,为什么在第一个示例中操作顺序是从右到左 这是世界性的 "Hello" || true ? "World" : "" 这算是你好 "Hello" || (true ? "World" : "") 这是由于逻辑优先 在第一个示例中,逻辑用于确定是输出世界还是输出。如果其中一种情况Hello | | true为true,则三元运算符将输出World 在第二种情况下,如果短路评估失败,则使用| |作为备用。也就是说,如果第一个值为true,则尝试输出第一个值。如果第一个值(在本例中为Hello)为f
"Hello" || true ? "World" : ""
这算是你好
"Hello" || (true ? "World" : "")
这是由于逻辑优先 在第一个示例中,逻辑用于确定是输出世界还是输出。如果其中一种情况Hello | | true为true,则三元运算符将输出World 在第二种情况下,如果短路评估失败,则使用| |作为备用。也就是说,如果第一个值为true,则尝试输出第一个值。如果第一个值(在本例中为Hello)为false,则计算下一个值true?世界: 在这两个示例中,逻辑在第一个值Hello上计算为true。不同之处在于,第一种情况用作三元运算符,作为使用
if ("Hello" || true) {
return "World"
} else {
return ""
}
这是由于逻辑优先 在第一个示例中,逻辑用于确定是输出世界还是输出。如果其中一种情况Hello | | true为true,则三元运算符将输出World 在第二种情况下,如果短路评估失败,则使用| |作为备用。也就是说,如果第一个值为true,则尝试输出第一个值。如果第一个值(在本例中为Hello)为false,则计算下一个值true?世界: 在这两个示例中,逻辑在第一个值Hello上计算为true。不同之处在于,第一种情况用作三元运算符,作为使用
if ("Hello" || true) {
return "World"
} else {
return ""
}
您可能知道操作不是从左到右执行的,而是遵循操作员优先级:只需考虑:
1 + 2 * 3
你预计7点还是9点?在您的实验中,三元运算符的优先级较低
"Hello" || true ? "World" : ""
相当于
("Hello" || true) ? "World" : ""
希望这能有所帮助。您可能知道操作不是从左到右执行的,而是遵循操作员优先级:只需考虑:
1 + 2 * 3
你预计7点还是9点?在您的实验中,三元运算符的优先级较低
"Hello" || true ? "World" : ""
相当于
("Hello" || true) ? "World" : ""
希望这对你有帮助。我希望这对你有帮助
你好| |真的吗?世界:;
//同:
如果您好,是的{
console.logWorld
}否则{
控制台日志;
}; // 输出世界
console.logHello | |真的吗?世界:;//你好
//或之后的句子类似于:
伊夫鲁{
世界
}否则{
;
}
//例如:
真的吗?世界:| |你好;//输出世界
console.logHello | |真的吗?世界:;//你好我希望这对你有帮助
你好| |真的吗?世界:;
//同:
如果您好,是的{
console.logWorld
}否则{
控制台日志;
}; // 输出世界
console.logHello | |真的吗?世界:;//你好
//或之后的句子类似于:
伊夫鲁{
世界
}否则{
;
}
//例如:
真的吗?世界:| |你好;//输出世界
console.logHello | |真的吗?世界:;//输出您可以看到的HelloOperator优先级,或高于三元。我不知道你期望的答案是什么,除了,这是顺序。@epascarello我不介意条件运算符和逻辑运算符具有相同的优先级。我想知道为什么会有不同的想法levels@MisterJojo条件是OR操作。看起来它与逻辑OR运算符处于同一级别是合乎逻辑的。您可以看到OR运算符的优先级高于三元运算符。我不知道你期望的答案是什么,除了,这是顺序。@epascarello我不介意条件运算符和逻辑运算符具有相同的优先级。我想知道为什么会有不同的想法levels@MisterJojo条件是OR操作。将其与逻辑OR放在同一级别似乎是合乎逻辑的。这是有道理的。我希望它们的优先级相同,这是有道理的。我希望它们的优先级相同。