>  기사  >  웹 프론트엔드  >  Javascript의 삼항 연산자가 Null 병합 연산자를 대체할 수 있습니까?

Javascript의 삼항 연산자가 Null 병합 연산자를 대체할 수 있습니까?

Patricia Arquette
Patricia Arquette원래의
2024-11-02 08:37:02243검색

Can Javascript's Ternary Operator Replace Null-Coalescing Operators?

Null 병합 연산자 대신 사용할 수 있는 Javascript의 삼항 조건 연산자

Javascript에서 논리 "OR"(||) 연산자는 다음과 같습니다. 기본적인 널 병합 연산자로 사용됩니다. 예를 들어 user.name이 null 또는 false인 경우 displayName 변수에 기본값을 할당하려면 다음을 수행합니다.

<code class="javascript">displayName = user.name || "Anonymous";</code>

그러나 Javascript는 다른 언어에 있는 안전 탐색 연산자(?.)를 기본적으로 지원하지 않습니다.

CoffeeScript의 대체 구문

Elvis 연산자의 표현력과 안전한 탐색을 원한다면 Javascript 대신 CoffeeScript를 사용하는 것을 고려해 보세요. 유사한 효과를 얻기 위해 여러 가지 단축 표기법을 제공합니다.

Elvis 연산자와 동일:

<code class="coffeescript">displayName = user?.name || "Anonymous"</code>

안전 탐색 연산자와 동일:

<code class="coffeescript">streetName = lottery.drawWinner?().address?.zipcode</code>

추가 CoffeeScript 기능:

  • 존재 연산자(?->): 속성에 액세스하기 전에 속성이 존재하는지 확인합니다.
  • 함수 단축키( ()->): 화살표 함수를 간결하게 선언합니다.
  • 섹시한 함수 호출: 괄호 없이 함수 호출을 허용합니다.

참고: CoffeeScript는 향상될 수 있지만 표현력이 뛰어나기 때문에