JavaScript 삼항 연산자의 연산자 우선 순위 이해
JavaScript의 삼항 연산자를 다룰 때 코드가 다음과 같이 실행되도록 연산자 우선 순위를 파악하는 것이 중요합니다. 예정된. 주어진 예에서 삼항 연산자와 할당 연산자의 조합으로 인해 혼란이 발생합니다.
코드 해석
제공된 코드:
<code class="javascript">h.className += h.className ? ' error' : 'error'</code>
JavaScript에서는 구문이 올바르지 않습니다. 할당 연산자 h.className의 왼쪽은 이미 표현식이므로 여기에 다른 연산자를 직접 적용하려고 하면 오류가 발생합니다.
올바른 구문
오류 없이 코드를 실행하려면 다음과 같이 다시 작성해야 합니다.
<code class="javascript">h.className = h.className + (h.className ? ' error' : 'error')</code>
이 경우 괄호는 전체 삼항 연산을 묶어 결과가 h.className에 할당되도록 합니다. . 삼항 연산자는 대입 연산자보다 우선순위가 낮기 때문에 이는 매우 중요합니다.
연산자 우선순위
연산자 우선순위는 코드 표현식에서 연산자가 평가되는 순서를 정의합니다. . 자바스크립트에서는 삼항연산자(?:)가 대입연산자(=)보다 우선순위가 낮다. 즉 대입보다 먼저 삼항연산이 실행된다는 뜻이다.
따라서 위 코드가 올바르게 실행되면, h.className이 이미 설정되어 있는지 확인합니다. 그렇다면 기존 값에 'error'를 추가합니다. 그렇지 않으면 'error'를 h.className의 값으로 할당합니다.
위 내용은 연산자 우선 순위는 JavaScript의 삼항 연산자에 어떤 영향을 줍니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!