>  기사  >  웹 프론트엔드  >  javascript_javascript 팁의 && 및 || 표현식에 대한 팁 공유

javascript_javascript 팁의 && 및 || 표현식에 대한 팁 공유

WBOY
WBOY원래의
2016-05-16 16:05:031044검색

초보자라면 이 모든 기술과 각 기술이 어떻게 작동하는지에 대한 자세한 설명을 읽고 적용한 후에는 더욱 간결하고 효율적인 JavaScript 프로그램을 작성할 수 있을 것입니다.

실제로 JavaScript 마스터는 이러한 기술을 사용하여 강력하고 효율적인 JavaScript 프로그램을 많이 작성해 왔습니다.

강력한 && 및 || 표현식
JavaScript 라이브러리 및 JavaScript 프레임워크에서 본 적이 있을 수 있으므로 몇 가지 기본 예부터 시작해 보겠습니다.

예 1. || (또는)
기본값을 설정하고 일반적으로

을 사용합니다.

코드 복사 코드는 다음과 같습니다.

함수 문서 제목(theTitle) {
if (!theTitle) {
theTitle = "제목 없는 문서";
}
}

다음으로 바꾸세요:

코드 복사 코드는 다음과 같습니다.

함수 문서 제목(theTitle) {
theTitle = theTitle || "제목 없는 문서";
}

분석:

먼저 다음 "팁" 상자를 읽고 JavaScript가 부울 값을 결정하는 방법을 검토하세요.
|| 연산자는 왼쪽부터 표현식의 참 또는 거짓을 판단합니다. 참이면 왼쪽 표현식이 반환한 값을 즉시 반환하고, 왼쪽 표현식이 거짓이라고 판단하면 계속해서 판단합니다. 오른쪽의 표현식을 반환하고
의 값을 반환합니다. theTitle이 false로 평가되면 오른쪽 표현식의 값이 반환됩니다. 즉, theTitle 변수가 true로 평가되면 theTitle의 값이 반환됩니다.
!팁:
JavaScript에 의해 거짓으로 판단되는 값: null, false, 0, 정의되지 않음, NaN 및 ""(빈 문자열).
Infinity와 같은 NaN 값은 false가 아닌 true로 평가된다는 점을 기억하세요.
위 사항을 제외한 나머지 모든 값은 사실로 판단됩니다.

예제 2. &&(및)

이러지 마세요:

function isAdult(age) {
 if (age && age > 17) {
  return true;
 } else {
  return false;
 }
}

다음으로 바꾸세요:

코드 복사 코드는 다음과 같습니다.

함수 isAdult(나이) {
반품 연령 && 연령 > 17;
}

분석:

&& 연산자는 왼쪽부터 표현식을 평가하며, 왼쪽 표현식이 false로 평가되면 오른쪽 표현식이 true인지 여부에 관계없이 즉시 false를 반환합니다.
왼쪽 식이 참이면 계속해서 오른쪽 표현식을 평가한 후 오른쪽 표현식의 결과를 반환합니다
점점 재미있어지네요

예시 3.

이러지 마세요:

if (userName) {
 logIn(userName);
} else {
 signUp();
}

다음으로 바꾸세요:

코드 복사 코드는 다음과 같습니다.

userName && 로그인(userName) || signUp();

분석:

userName이 true인 경우 logIn 함수를 호출하고 userName 변수를 전달합니다.
userName이 false인 경우 변수를 전달하지 않고 logIn 함수를 호출합니다

예4.
이러지 마세요:

var userID;

if (userName && userName.loggedIn) {
 userID = userName.id;
} else {
 userID = null;
}

다음으로 바꾸세요:

코드 복사 코드는 다음과 같습니다.

var userID = userName && userName.loggedIn && userName.id;

분석:

userName이 true인 경우 user.loggedIn을 호출하고 user.loggedIn이 true인지 확인하고 true를 반환하면 세 번째 표현식의 반환 값을 반환합니다.
userName이 비어 있으면 null을 반환합니다

위 내용은 이 기사에서 공유한 첫 번째 JavaScript 팁입니다. 마음에 드셨으면 좋겠습니다.

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