>웹 프론트엔드 >JS 튜토리얼 >더 빠른 JavaScript 조건 표현식을 작성하는 방법

더 빠른 JavaScript 조건 표현식을 작성하는 방법

尊渡假赌尊渡假赌尊渡假赌
尊渡假赌尊渡假赌尊渡假赌원래의
2025-03-10 00:32:12898검색

How to Write Faster JavaScript Condition Expressions

더 빠른 JavaScript 조건 표현식을 작성하는 방법JavaScript에는 다른 언어로 반드시 적용되지 않는 흥미로운 최적화 기능이 있습니다. 다음 코드 샘플을 고려하십시오.

var x = 10;
var y = true;

if (x*x > 1000 || y) alert("true!");
예상대로, 첫 번째 조건이 실패하더라도 Y는 사실이기 때문에 "True"는 출력입니다. JavaScript 통역사는 각 조건을 순서대로 분석합니다. 우리가 x를 100으로 변경하면 x*x는 1000보다 크고 true로 평가됩니다. 그러나 우리는 논리적 또는 (||)을 사용하고 있기 때문에 통역사는 y를 분석 할 필요가 없습니다. 표현이 사실이어야합니다. 따라서 최소한 처리가 필요한 것을 먼저 분석 할 수 있도록 표현식을 최적화 할 수 있습니다.
if (y || x*x > 1000) alert("true!");
y가 참이면, 통역사는 두 번째 조건을 평가할 필요가 없습니다. 특히 기능을 호출하거나 집중 계산을 수행하거나 DOM을 분석하는 경우 상당한 시간을 절약 할 수 있습니다. 동일한 최적화는 논리 및 (&&)에 적용됩니다. 이 경우 거짓으로 평가하는 첫 번째 표현식은 전체 조건을 허위로 만듭니다. 더 이상 처리가 필요하지 않습니다. 조건 내부 할당 James Edwards는 최근에 코드에 대해 논의한 조건 내에서 기사 과제를 썼습니다.

요약 변수는 "사후"의 ID로 HTML 요소로 설정됩니다. 요소가 존재하면 조건이 true로 평가되고 경고가 나타납니다. 요소를 찾을 수없는 경우 조건은 False로 평가하고 조건부 코드 중 어느 것도 실행되지 않습니다. 의견에 따르면 유용한 기술은 유용한 기술이지만 JavaScript를 읽고 디버그하기가 더 어려워지기 때문에이 관행을 좋아하는 개발자는 거의 없습니다. 그러나 또 다른 문제가 있습니다. 2 개 이상의 조건에서 과제가 실행되지 않을 수 있습니다. 예를 들어:

x가 true로 평가하면 통역사는 값을 Y에 할당하지 않으며 경고는 항상 오류를 던집니다. 조건을 되돌려 고칠 수 있으므로 Y는 항상 평가됩니다 (예 :
if (summary = document.getElementById("post-summary")) {
	alert(summary.innerHTML);
}
그럼에도 불구하고, 이러한 조건의 순서가 필수적이라는 것은 분명하지 않기 때문에 여전히 혼란을 일으킬 수 있습니다. 이 기사의 상단 절반을 읽은 개발자는 X를 먼저 평가하여 코드를 최적화하려고 시도 할 수도 있습니다! 요약하면, 조건 내에서 과제를 사용하려면 계속하십시오. 그러나 그것이 필요한 유일한 조건인지 확실해야합니다! 더 빠른 JavaScript 조건 표현식에 대한 질문
if (x || y = functionY()) {
	alert(y);
}
JavaScript 조건 표현식이란 무엇입니까?
if (y = functionY() || x) …
3 원 운영자라고도 알려진 JavaScript 조건 표현식은 3 개의 피연산자를 사용하는 작업자 유형입니다. If-Else 진술을 작성하는 속기 방법입니다. 다음과 같이 구성되어 있습니다. 조건? value_if_true : value_if_false. 조건이 먼저 평가됩니다. 사실이라면 표현식은 value_if_true를 반환합니다. 거짓이면 value_if_false를 반환합니다 javaScript는 논리 및 (&&) 및 (||) 연산자를 어떻게 평가합니까?

JavaScript는 논리 및 (&&) 및 (||) 연산자에 대한 짧은 회로 평가를 사용합니다. 및 연산자의 경우 첫 번째 피연산자가 False 인 경우 JavaScript는 두 번째 피연산자를 평가하지 않고 첫 번째 피연산자를 반환합니다. OR 연산자의 경우 첫 번째 피연산자가 참이면 JavaScript는 두 번째 피연산자를 평가하지 않고 첫 번째 피연산자를 반환하지 않습니다.

JavaScript 조건을 사용하여 값을 비교할 수 있습니까?

javascript는 == (동일), (동일하지 않거나 동일하지 않음), == (동일하지 않거나 동일하지 않음)와 같은 몇 가지 비교 연산자를 제공합니다. 보다), = (보다 크거나 동일),

javaScript에서 ==와 ===의 차이점은 무엇입니까?

== 운영자는 값의 동등성을 확인하지만 유형은 유형이 아닙니다. 따라서“5”== 5는 True를 반환합니다. 반면에 === 운영자는 값의 동등성과 유형을 모두 검사합니다. 따라서“5”=== 5는 문자열이고 다른 하나는 숫자이기 때문에 false를 반환합니다.

JavaScript에서 if-else 문을 어떻게 사용할 수 있습니까?

JavaScript의 if-else 문은 다른 조건에 따라 다른 동작을 수행하는 데 사용됩니다. 구문은 다음과 같습니다. // 조건이 true 인 경우 } else {

// 조건이 false 인 경우 실행되는 코드가 실행되면 코드가 실행됩니다. JavaScript?

JavaScript의 논리적 인 (!) 연산자는 조건의 부울 결과를 되돌리는 데 사용됩니다. 예를 들어, 조건이 true 인 경우,! 조건은 false를 반환하고 그 반대도 마찬가지입니다.

JavaScript의 여러 조건에 대해 3 원 운영자를 사용할 수 있습니까?

예, Ternary 연산자가 둥지를 둥지로 JavaScript의 여러 조건을 처리 할 수 ​​있습니다. 그러나 중첩 된 3 원 운영자는 코드를 읽고 이해하기가 더 어려워 질 수 있으므로 드물게 사용해야합니다.

JavaScript에서 스위치 명령문을 어떻게 사용할 수 있습니까?
JavaScript의 스위치 명령문은 다른 조건에 따라 다른 작업을 수행하는 데 사용됩니다. 조건이 여러 가지 다른 방법을 작성하는보다 효율적인 방법입니다. 구문은 다음과 같습니다. switch (expression) {
case x : break; case y : // code block break; default : } 스위치 표현식은 한 번 평가되며 그 값은 각 경우에 비교됩니다. 일치하는 경우 해당 코드 블록이 실행됩니다.
javaScript에서 null과 정의되지 않은 차이점은 무엇입니까?

JavaScript에서 NULL은 값이 없거나 객체가 없음을 의미하는 할당 값입니다. 객체 값이 의도적으로없는 것입니다. 반면에 정의되지 않은 것은 변수가 선언되었지만 아직 값이 할당되지 않았 음을 의미합니다.

JavaScript 조건부를 사용하여 변수가 정의되었는지 확인하는 방법은 조건부 표현식에서 유형을 사용하여 변수가 JavaScript로 정의되어 있는지 확인할 수 있습니다. 변수가 정의되지 않으면 Typeof는 "정의되지 않은"을 반환합니다. 예는 다음과 같습니다. if (myvar! == "undefined") { // myvar가 정의됩니다

} else {

// myvar는

} 가 정의되지 않습니다.

위 내용은 더 빠른 JavaScript 조건 표현식을 작성하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.