У JavaScript, коли для випробування використовується оператор if з декількома умовами, чи перевіряє їх JavaScript незалежно, чи він під заставу перед тим, як перевірити їх усіх, якщо він уже помилковий?
Наприклад:
a = 1
b = 2
c = 1
if (a==1 && b==1 && c==1)
Чи перевірить javascript для всіх 3 цих умов або, побачивши, що b не дорівнює 1, а отже, помилковим, він вийде з оператора?
Я запитую з точки зору продуктивності. Якщо, наприклад, я тестую 3 складних селектори jQuery, я б краще не перейшов JQuery 3 рази на DOM, якщо через перше очевидно, що він поверне FALSE. (У такому випадку було б більше сенсу вкладати 3, якщо заяви).
ДОДАТОК: Більше цікавості, який правильний термін для цього? Я помічаю, що багато хто з вас використовують термін «коротке замикання». Крім того, деякі мови роблять це, а інші не роблять?