Get to know MDN better
This page was translated from English by the community. Learn more and join the MDN Web Docs community.
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2015년 7월.
논리적 OR (||) (논리적 분리) 연산자는 피연산자 중 하나 이상이 참인 경우에만 참입니다. 일반적으로 불리언(논리적) 값과 함께 사용되며, 이 경우에는 불리언 값을 반환합니다. 그러나 || 연산자는 실제로 지정된 피연산자 중 하나의 값을 반환하므로, 이 연산자를 불리언이 아닌 값과 함께 사용하면 불리언이 아닌 값이 반환됩니다.
만약 x를 true로 반환할 수 있으면 x를 반환하고, 그렇지 않으면 y를 반환합니다.
값을 true로 변환할 수 있는 경우, 해당 값은 소위 truthy하다고 할 수 있습니다. 값을 false로 변환할 수 있으면, 해당 값을 falsy하다고 할 수 있습니다.
false로 변환할 수 있는 표현식의 예는 다음과 같습니다.
|| 연산자는 불리언 값이 아닌 피연산자와 함께 사용할 수 있지만, 반환 값은 항상 불리언 원시 값으로 변환할 수 있으므로 불리언 연산자로 간주할 수 있습니다. 반환 값(또는 일반적으로 모든 표현식)을 해당 불리언 값으로 명시적으로 변환하려면 이중 [NOT operator] 또는 Boolean 생성자를 사용합니다.
논리적 OR 표현식은 왼쪽에서 오른쪽으로 평가되며, 다음 규칙을 사용하여 "단락" 평가가 가능한지 테스트합니다.
(some truthy expression) || expr은 참 같은 값(truthy) 표현식으로 단락 평가됩니다.
단락은 위의 expr 부분이 평가되지 않으므로 이로 인한 부작용이 발생하지 않음을 의미합니다. (예: expr이 함수 호출인 경우 호출이 수행되지 않음) 이는 첫 번째 피연산자를 평가한 후에 피연산자 값이 이미 결정되었기 때문에 발생합니다. 아래 예제를 참조하세요.
다음 표현식은 동일해 보일 수 있지만, && 연산자가 || 연산자보다 먼저 실행되기 때문에 동일하지 않습니다. (연산자 우선순위를 참조).
다음 코드는 || (논리적 OR) 연산자의 예를 보여줍니다.
참고 : 이 연산자를 사용하여 일부 변수에 기본값을 제공하는 경우, 거짓 같은 값(falsy)은 사용되지 않으므로 주의해야 합니다. null 또는 undefined만 필터링해야 하는 경우, 널 병합 연산자를 사용하는 것이 좋습니다.
불리언을 포함하는 아래 연산은
항상 아래와 같습니다.
불리언을 포함하는 아래의 연산은
항상 아래와 같습니다.
논리적 표현식은 왼쪽에서 오른쪽으로 평가되기 때문에 특정 규칙을 따르는 경우 복잡한 식에서 괄호를 제거할 수 있습니다.
불리언을 포함하는 다음 복합적인 연산은
언제나 다음과 같습니다.
| ECMAScript® 2027 Language Specification # prod-LogicalORExpression |
Enable JavaScript to view this browser compatibility table.
This page was last modified on 2025년 6월 27일 by MDN contributors.
Your blueprint for a better internet.
Visit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation.
Portions of this content are ©1998–2026 by individual mozilla.org contributors. Content available under a Creative Commons license.