在 javascript 中,当使用带有多个条件的 if 语句进行测试时,javascript 是否会测试它们,或者如果它已经是假的,它会在测试它们之前保释吗?
例如:
a = 1
b = 2
c = 1
if (a==1 && b==1 && c==1)
javascript 是否会针对所有 3 个条件进行测试,或者在看到 b 不等于 1 并且因此为 false 之后,它会退出语句吗?
我是从性能的角度来问的。例如,如果我正在测试 3 个复杂的 jQuery 选择器,我宁愿不让 jQuery 遍历 DOM 3 次,如果通过第一个选择器很明显它将返回 FALSE。(在这种情况下,嵌套 3 个 if 语句会更有意义)。
附录:更令人好奇的是,这个的正确术语是什么?我注意到你们中的许多人使用“短路”这个词。另外,有些语言会这样做而其他语言不会吗?