자바스크립트 조건식. JavaScript - 조건부 및 부울 연산자

일상 생활에서 어떤 조건에 따라 어떤 종류의 결정을 내려야 하는 경우가 종종 있습니다. 예를 들어 주말에 날씨가 따뜻하면 바다에 가고, 날씨가 흐리면 집에 앉아요.

프로그래밍에서 이것은 또한 매우 일반적입니다. 이에 대한 두 가지 조건문이 있습니다. if-else 및 switch-case 입니다. 이 기사에서는 if-else 문에 대해 설명하고 다음 기사에서는 switch-case에 대해 설명합니다.

if-else 조건문의 구문은 다음과 같습니다.


조건이 참이면 if 블록의 코드가 실행되고, 조건이 거짓이면 else 블록의 코드가 실행됩니다.

더 나은 이해를 위해 간단한 예를 들어 보겠습니다. 우리는 일정 금액의 돈이 있고 차를 사고 싶습니다. 여기서 그러한 조건이 즉시 발생합니다. 돈이 충분하면이 차를 살 수 있고 그렇지 않으면 살 수 없습니다.

Var 돈 = 35000; // 우리에게 35,000유로가 있다고 가정해 봅시다. // 우리가 사고자 하는 자동차의 가격은 50,000유로입니다. 그리고 if(money > 50000)( document.write("우리는 차를 살 수 있습니다"); )else( document.write("차를 살 돈이 충분하지 않습니다"); )

문서를 저장하고 브라우저에서 열어 페이지에 "자동차를 살 돈이 충분하지 않습니다."라는 메시지가 표시되는 것을 확인합니다. 50,000유로 이상이면 if 블록의 코드가 실행됩니다. 정확히 50,000유로가 있다면 50,000은 50,000을 넘지 않기 때문에 자동차도 살 수 없습니다. 이 경우 조건이 참이 되려면 크거나 등호(>=)를 써야 합니다.

논평! 논리 연산 같음은 두 개의 등호(==)로 작성됩니다. (보다 작거나 같은 논리 연산도 있습니다.

중괄호 사용

문이 하나만 있는 경우 중괄호는 선택 사항이고 블록에 문이 둘 이상인 경우 중괄호가 필요합니다.

위의 예는 중괄호 없이도 잘 작동합니다. 두 블록 모두 각각 하나의 명령문만 포함하기 때문입니다.

당신이 무엇이든 쓸 수 있다면 안에 논리 연산단순하든 복잡하든. AND(&&) 및 OR(||) 연산자를 사용할 수도 있습니다.

논평! else 블록의 존재 여부는 선택 사항입니다.

예를 들어 a가 b와 같고 c가 d와 같으면 해당 메시지를 표시하고 else 블록이 없으면 다음 줄로 이동합니다.

변수 a = 4, b = 4, c = 8, d = 8; if((a == b) && (c == d)) document.write("a는 b와 같고 c는 d와 같습니다"); document.write("다음 코드 줄");

if-else if-else 문

if 블록 다음에 하나 이상의 else if 블록이 올 수 있으며 끝에는 else 블록이 있습니다. 둘 이상의 조건을 사용해야 할 때 유용합니다.


더 나은 이해를 위해 일상 생활에서 예를 들어 보겠습니다. 예를 들어 특정 수의 콘센트가 있습니다. 방에 소켓이 하나만 있으면 하나의 장치만 연결할 수 있고, 소켓이 두 개 있으면 두 개의 장치를 연결할 수 있으며, 더 있으면 집의 모든 장치를 전기 네트워크에 연결할 수 있습니다.

이제 프로그래밍으로 넘어 갑시다.

var 소켓 = 2; // 집안의 소켓 수 if(socket == 1) document.write("

하나의 장치만 연결할 수 있습니다.

"); 그렇지 않으면 if(소켓 == 2)( document.write("

두 개의 장치만 연결할 수 있습니다.

"); 문서.쓰기("

예를 들어 TV와 노트북

"); )else( 문서.쓰기("

집에서 전기 네트워크로 모든 장치를 연결할 수 있습니다.

"); }

소켓 변수의 값에 따라 하나 또는 다른 코드 블록이 작동합니다. 이미 이해하셨겠지만 소켓이 1이면 첫 번째 코드 블록이 작동합니다. 소켓이 2이면 두 번째 코드 블록이 작동하고 소켓에 다른 값(음수 포함)이 있으면 세 번째 코드 블록이 작동합니다.

다른 경우의 약어

특정 조건에 따라 변수가 하나 또는 다른 값을 받을 수 있는 경우 약어를 사용할 수 있습니다.


예를 들어, 변수 a의 값이 변수 b의 값보다 크면 변수 x에 "변수 a가 변수 b보다 큽니다"라는 메시지를 쓰고 그렇지 않으면 "변수 a가 변수 b보다 작습니다"라고 씁니다.

변수 a = 50, b = 100, x; x = (a > b) ? "

변수 a가 변수 b보다 큽니다.

" : "

변수 a가 변수 b보다 작음

"; //결과 출력 document.write(x);

이것이 제가 이 기사에서 여러분에게 말하고 싶었던 전부입니다. if-else 조건문은 모든 스크립트에서보다 더 많이 사용되므로 이를 알고 이해하는 것이 매우 중요합니다. 다음 글에서는 또 다른 switch-case 조건문에 대해 말씀드리겠습니다.


JavaScript의 조건문에 대해 알아봅시다. 여기서 우리는 If-Else 구성을 고려할 것입니다. 러시아어로 번역하면 이 조건은 If-Then으로 읽힙니다.

그러나 JavaScript에서 조건에 대해 이야기하기 전에 조건이 실생활에서 어떻게 그리고 어디서 발생하는지 살펴보겠습니다.

예를 들어 저녁에 날씨가 맑으면 공원에 갑니다.

이 차의 가격이 1,000달러 미만이면 내가 살 것입니다.

따라서 이미 이해하셨겠지만 "If" 조건과 "Then" 결과는 우리 삶에서 매우 자주 발견됩니다. 즉, 다양한 상황에서 우리의 행동은 주로 모든 조건에 따라 달라집니다.

프로그래밍 언어에도 동일하게 적용됩니다. 여기에는 특정 조건을 설정하고 지정된 조건이 충족되거나 충족되지 않는 경우 작업을 수행할 수 있는 특수 구조가 있습니다.

조건부 연산자 또는 JavaScript의 If-Else 구문을 사용하는 간단한 예제를 구현해 봅시다.

먼저 JavaScript에서 If 문이 어떻게 작동하는지 살펴보겠습니다.

이를 위해 먼저 아래에 예를 든 다음 분석합니다.

var weather = "맑음" ; /* 변수 pogoda를 생성하고 "clear"로 설정 */

if(pogoda == "clear" ) /* 조건 생성: pogoda가 "clear"이면 - TRUE */

( /* 저것... */

문서.쓰기();

우리 가족과 나는 저녁에 공원에 간다

위의 예에서 무엇을 주목해야 합니까?

첫째, 자바스크립트에서 등호 ==와 대입 =입니다. 즉, 먼저 변수를 만들고 값을 할당합니다. 그런 다음 If 조건에서 우리는 평등에 대해 이야기하고 있습니다.

둘째, 중괄호()로 묶인 조건의 충족 여부에 대해 이야기할 때 JavaScript 언어는 조건을 True 또는 False로 인식한다는 점을 이해해야 합니다. 즉, 우리의 경우와 같이 조건이 True이면 중괄호()로 묶인 작업이 수행됩니다.

아래 예와 같이 조건이 False이면 중괄호()로 묶인 조건이 실행되지 않습니다.

var 날씨 = "흐림" ;

if(pogoda == "clear" ) /* 조건은 이제 FALSE입니다: pogoda는 "clear"와 같지 않습니다 */

document .write ("저녁에 가족과 함께 공원에 갈 예정입니다" );

이것이 If 조건문이 작동하는 방식입니다. 조건이 True이면 작업이 수행되고 False이면 수행되지 않습니다. 모든 것이 간단합니다.

이제 JavaScript에서 If-Else 구조가 작동하는 방식에 대해 이야기하겠습니다. 그렇지 않으면 "그렇지 않으면"으로 번역됩니다.

실생활로 돌아가자. 대부분의 경우 조건이 충족되면 한 가지 작업을 수행합니다. 충족되지 않으면 "그렇지 않으면"다른 작업을 수행합니다.

이전에 제공된 예를 계속 살펴보겠습니다.

저녁에 맑으면 공원에 가고 그렇지 않으면 (흐린 경우)우리는 집에 머물면서 TV를 볼 것입니다.

또는이 차가 $ 1000 미만이면 살 것입니다. 그렇지 않으면 (비용이 더 든다면) 나는 이 돈으로 여행을 갈 것이다.

JavaScript에는 대안( 다른 일을)조건이 충족되지 않은 경우. JavaScript에서는 If-Else 구문을 사용하여 유사한 조건을 만들 수 있습니다. 예를 들어 보겠습니다.

var 날씨 = "흐림" ; /* 변수 pogoda를 "cloudy"로 설정 */

if(pogoda == "clear" ) /* 조건 생성: pogoda가 "clear"이면 TRUE */

document .write ("저녁에 가족과 함께 공원에 갈 예정입니다" );

else /* 그렇지 않으면 - pogoda가 "clear"와 같지 않으면 FALSE입니다 */

{
문서.쓰기("

" + "우리는 집에 있습니다 - TV 시청" );
}

우리는 집에 있어 - TV 시청

주어진 예를 분석해 봅시다.

따라서 조건이 True이면 중괄호()로 묶인 If 문 다음의 작업이 실행됩니다.

조건이 False 이면 중괄호() 로 묶인 Else 문 다음의 작업이 실행됩니다.

간단하지만 일반적인 JavaScript If-Else 구조가 작동하는 방식을 살펴보았습니다. 그리고 여기에서 미래를 위해 조건이 아무리 복잡하더라도 우선 중요한 것은 그것이 True 또는 False라는 것입니다.

다루는 자료를 통합하려면 조건문 Javascript - IF-ELSE 구성 » 다른 예를 살펴보겠습니다.

이제는 숫자로 작업할 때 If-Else 조건을 사용합니다.

변수 개수 = 10 ;

if(count = 3 ) /* 조건 생성: friends 배열의 요소 수가 3보다 크거나 같으면...*/

document .write("최소 3개의 요소가 있는 큰 배열입니다." );

그렇지 않으면 /* 그렇지 않으면... */

{
document .write("요소가 3개 미만인 작은 배열입니다." );

조건부 연산자를 사용하면 지정된 식(조건)을 평가한 결과에 따라 특정 코드 블록을 건너뛰거나 실행할 수 있습니다. 조건문은 프로그램의 결정 지점이라고 말할 수 있으며 때로는 분기문이라고도 합니다. 프로그램이 도로이고 PHP 인터프리터가 길을 따라 걷는 여행자라고 상상한다면 조건문은 프로그램 코드가 두 개 이상의 도로로 분기되는 교차로로 생각할 수 있으며 이러한 교차로에서 인터프리터는 따라야 할 도로를 선택해야 합니다.

if 문

if 문은 가장 간단한 분기 문입니다.

if 문의 구문:

if 문은 먼저 괄호 안에 지정된 조건식을 평가하고 이 식의 결과는 부울 값입니다. 결과가 참(true)이면 명령이 실행됩니다. 표현식이 false로 평가되면 명령문이 실행되지 않습니다. 복잡한 표현을 조건으로 사용할 수 있습니다.

if 문의 본문에 하나의 문만 사용되는 경우 중괄호로 묶을 수 있지만 반드시 필요한 것은 아닙니다. 그러나 if 문의 본문에서 둘 이상의 문을 실행하려면 이러한 여러 문을 중괄호로 묶어야 합니다. 닫는 중괄호 뒤에 세미콜론이 오면 안 됩니다.

다음 코드는 if 문의 사용을 보여줍니다.

if 문은 다른 if 문 안에 중첩될 수 있습니다.

마지막 예에 주의하십시오. 명령은 if 문 아래에 정확하게 작성될 필요가 없으며 명령의 크기가 크지 않으면 한 줄에 작성할 수 있습니다.

if else 문

그래서 우리는 if 문을 사용하면 조건이 참일 경우 문을 실행할 수 있다는 것을 배웠습니다. 조건이 거짓이면 아무 조치도 취하지 않습니다. 그러나 특정 조건이 참이면 일부 명령을 실행하고 조건이 거짓이면 다른 명령을 실행해야 하는 경우가 종종 있습니다. if else 분기가 사용되는 경우입니다. if 문 다음에 오는 문 블록과 else 키워드 뒤에 오는 또 다른 문 블록으로 구성됩니다.

if else 문의 구문은 다음과 같습니다.

else 문은 선택 사항입니다. else 다음에 위치한 명령문 블록은 기본적으로 실행됩니다. if 의 조건식이 false 로 평가될 때. else 문은 if 문과 별도로 사용할 수 없습니다. else 블록은 if 문 뒤에만 배치해야 하며 기본 동작으로 간주할 수 있습니다.

이전 예제를 약간 수정하면 조건이 false로 평가되는 경우 if else 문이 어떻게 작동하는지 확인할 수 있습니다.

if else 문은 중첩될 수 있습니다. 이러한 중첩된 조건문은 실제로 매우 일반적입니다. if 문은 다른 if 또는 else 블록 내에 중첩된 경우 중첩됩니다. 코드에서 연속으로 여러 if 문을 사용하는 경우 else는 항상 가장 가까운 if를 참조합니다.

마지막 else 는 내부 블록에 없기 때문에 if($a) 에 적용되지 않으므로 가장 가까운 것은 if($i) 입니다. 블록 내부의 else 문은 if($b)와 관련이 있습니다. if가 가장 가깝기 때문입니다.

elseif/else if 구문

if/else 문은 조건식의 값을 평가하고 프로그램 코드의 일부를 실행합니다. 하지만 많은 프래그먼트 중 하나를 실행해야 하는 경우에는 어떻게 해야 할까요? 연속으로 여러 조건을 확인해야 하는 경우 elseif 또는 else if 구성이 이에 적합합니다(동일한 구성이며 다르게 작성됨). 이것은 기술적으로 독립형 PHP 구조가 아닙니다. 반복되는 if/else 문을 사용하는 일반적인 프로그래밍 스타일일 뿐입니다. 진정한 조건을 찾거나 else 블록에 도달할 때까지 추가 조건을 테스트할 수 있습니다. elseif/else if 구문은 if 문 뒤와 else 문(있는 경우) 앞에 위치해야 합니다.

여기에서 세 가지 조건을 확인하고 $username 변수의 값에 따라 다른 작업을 수행합니다.

사실 이 단편은 특별한 것이 없다. 각각의 if 문은 이전 if 의 else 구성의 일부인 일련의 if 문일 뿐입니다. 이 형식의 표기법을 처음 접하고 그것이 어떻게 작동하는지 명확하지 않은 사람들을 위해 동일한 예제를 구조의 중첩을 완전히 보여주는 동등한 구문 형식으로만 다시 작성할 것입니다.

JavaScript에는 프로그램 실행에 영향을 미치는 조건 구조가 있습니다. If (in English if) something is, something is true, 그런 다음 한 가지를 수행하고 그렇지 않으면 (영어 else) - 다른 것을 수행하십시오.

if 문

if 문이 어떻게 작동하는지 간단히 살펴보겠습니다. 간단하고 많은 설명이 필요하지 않습니다.

if(조건)(조건이 참일 때 실행할 코드)

간단합니다. 조건이 참이면 (...) 블록의 코드가 실행됩니다.

vardigit = 4; if (숫자 == 4) ( document.write("숫자는 4입니다."); )

약간 이상한 코드를 작성할 수 있습니다.

vardigit = 4; if(true) ( ​​document.write("조건이 true입니다."); )

다른 진술

else 문은 if 문과 함께 사용할 수 있습니다. "그렇지 않으면"으로 번역되고 대체 코드를 지정합니다.

vardigit = 4; if (숫자

if 및 else 문에 대한 이 예에서 중괄호의 다른 철자에 주의하십시오. 따라서 작성은 전혀 의무 사항이 아니며 두 구문 모두 정확합니다.

else 문 뒤에 갈 수 있습니다. 새로운 지시만약에. 따라서 여러 조건을 확인합니다.

vardigit = 4; if (숫자

JavaScript에는 PHP와 같은 elseif 문이 없습니다.

하나의 명령만 실행해야 하는 경우에는 블록 중괄호(...)가 필요하지 않습니다. 이 예에서는 생략할 수 있습니다.

vardigit = 4; if (숫자

자바스크립트에 거짓말하기

if(조건) 문은 괄호 안의 조건(식)을 평가하고 부울(참 또는 거짓)으로 변환합니다.

JavaScript에는 거짓말이 있음을 반복해 봅시다.

  • 숫자 0(영).
  • 빈 줄 "".
  • 부울 거짓 :)
  • 널 값.
  • 값이 정의되지 않았습니다.
  • NaN(숫자가 아님) 값.

다른 모든 것은 사실입니다.

몇 가지 가능한 오류:

If ("거짓") document.write("참입니다.
"); if (false) document.write("참입니다.

");

여기에서 문자열 "false"(따옴표로 묶음)와 부울 유형 false의 값을 구분해야 합니다.

If (" ") document.write("참입니다.
"); else document.write("거짓입니다.
");

여기에서 문자열 " "(공백 내부)와 빈 문자열 ""을 구분해야 합니다. 문자열 내부의 공백은 문자열을 비우는 것이 아니라 포함하는 문자로 만듭니다. 인터프리터는 문자인지 공백인지 상관하지 않습니다. 문자는 문자입니다.

JavaScript의 기타 조건부 구성
  • JavaScript 스위치 구조.
  • 물음표 연산자

이 기사에서는 JavaScript 언어의 조건부 및 논리 연산자를 살펴보겠습니다.

자바스크립트 조건문

조건문은 일부 조건에 따라 하나 이상의 특정 명령을 실행할 수 있도록 하는 JavaScript 언어(ECMAScript)의 문입니다.

JavaScript의 조건문 형식:

  • 조건부 if 문(하나의 분기 포함);
  • 조건 연산자 if...else (2개의 분기 포함);
  • else if... 조건문(다중 분기 포함);
  • 삼항 연산자(?: );
  • 스위치 문.
조건부 if 문

if 문의 구문:

If(조건) 문

조건부 if 문은 다음으로 구성됩니다.

  • 키워드 if ;
  • 조건(괄호 안의 표현식)은 true 또는 false여야 합니다(또는 이러한 값 중 하나로 캐스트되어야 함).
  • 조건이 참이거나 캐스트된 경우 실행할 명령문입니다.

예를 들어:

(참) 개수 = 4인 경우;

이 예에서는 true를 조건으로 사용합니다. 이는 count = 4 명령어가 항상 실행됨을 의미합니다. 이 예 if 문이 어떻게 작동하는지 설명하기 위해 주어진 것입니다. 왜냐하면 아무 의미가 없습니다.

예를 들어, 그 유형이 숫자인 경우 votes 변수의 값을 1씩 증가시켜 보겠습니다.

If (투표 유형 === "숫자") votes++;

여러 명령어를 실행해야 하는 경우 중괄호 안에 넣어야 합니다.

If (투표 유형 === "숫자") ( votes++; console.log("투표 수: " + votes); )

If (투표 유형 === "숫자") ( votes++; )

if...else 문

if...else 문은 조건이 참일 때 특정 문을 실행하고 조건이 거짓일 때 다른 문을 실행해야 할 때 사용됩니다.

통사론:

If (조건) ( 하나 이상의 문(조건이 참이거나 참으로 변환될 때 실행됨) ) else ( 하나 이상의 문(조건이 거짓이거나 거짓으로 변환될 때 실행됨) )

예를 들어 숫자가 짝수인지 여부에 대한 메시지를 콘솔에 출력해 보겠습니다.

If (숫자 % 2) ( console.log("홀수입니다!"); ) else ( console.log("짝수입니다!"); )

조건을 true 또는 false로 캐스팅하는 규칙

if 문의 조건에 있는 표현식이 true 또는 false 와 같지 않으면 JavaScript는 이를 해당 값 중 하나로 변환합니다. 그는 소위 "거짓말의 규칙"의 도움으로 이 행동을 수행합니다.

의미 이 규칙: 다음 값을 제외한 모든 표현식이 참입니다.

  • 거짓(거짓);
  • "" 또는 ""(빈 문자열);
  • NaN(특수 숫자 데이터 유형 "숫자가 아님");
  • 0(숫자 "제로");
  • null("빈" 값);
  • 정의되지 않음("정의되지 않은" 값).

예를 들어 nameUser 변수에 저장된 값에 따라 브라우저 콘솔에 환영 메시지를 인쇄해 보겠습니다.

If (nameUser) ( console.log("안녕하세요, " + name + "!"); ) else ( console.log("안녕하세요, 손님!"); )

nameUser 변수에 빈 문자열이 포함되어 있으면 거짓말 규칙에 따라 false 값으로 캐스트됩니다. 따라서 "Hello, guest!"라는 메시지가 콘솔에 표시됩니다. .

예를 들어 nameUser 변수에 "Timur"라는 문자열이 포함되어 있으면 조건의 표현식이 true 값으로 변환됩니다. 결과적으로 콘솔에 "Hello, Timur!"라는 메시지가 표시됩니다. .

else if... 문(여러 조건)

통사론:

If (조건 1) ( 문 1 ) else if (조건 2) ( 문 2 ) else if (조건 3) ( 문 3 //... ) else if (conditionN) ( 문 N ) else ( 어떤 조건도 참이 아니거나 이 값으로 캐스트되는 경우 실행될 문 )

조건부(삼항) 연산자(?:)

삼항 연산자는 조건에 따라 주어진 두 표현식 중 하나를 실행하는 데 사용할 수 있는 JavaScript 연산자입니다.

통사론:

상태? 식1: 식2

삼항 연산자는 기호를 사용하여 구분되는 세 개의 피연산자로 구성됩니다. 그리고: . 삼항 연산자의 조건은 첫 번째 피연산자에 지정됩니다. 괄호로 묶을 수도 있습니다. 조건이 참이거나 이 값으로 캐스트되면 표현식1이 실행되고 그렇지 않으면 표현식2가 실행됩니다.

예를 들어:

(숫자 > 10) ? console.log("숫자가 10보다 큽니다!") : console.log("숫자가 10보다 작거나 같습니다.");

JavaScript는 여러 삼항 연산자(?:)를 허용합니다.

Var dayNumber = new Date().getDay(); 일 = (일수 === 0) ? "일요일" : (dayNumber === 1) ? "월요일" : (dayNumber === 2) ? "화요일" : (dayNumber === 3) ? "수요일" : (dayNumber === 4) ? "목요일" : (dayNumber === 5) ? "금요일" : (dayNumber === 6) ? "토요일": "알 수 없는 요일"; console.log("오늘은 " + day.toLowerCase() + ".");

위의 예이지만 여러 if...else 문을 사용하는 경우:

Var dayNumber = new Date().getDay(); if (dayNumber === 0) ( day = "일요일"; ) else if (dayNumber === 1) ( day = "월요일"; ) else if (dayNumber === 2) ( day = "화요일"; ) else if (dayNumber === 3) ( day = "수요일"; ) else if (dayNumber === 4) ( day = "목요일"; ) else if (dayNumber === 5) ( 일 = "금요일"; ) else if (dayNumber === 6) ( day = "토요일"; ) else ( day = "알 수 없는 요일"; ) console.log("오늘은 " + day.toLowerCase() + ".");

switch 문

switch 문은 식의 값에 따라 여러 명령 중 하나의 버전을 실행하도록 설계되었습니다. 하나 또는 다른 옵션의 선택은 표현식 결과와 케이스 값( case )의 엄격한 동일성에 의해 결정됩니다.

Switch 문 구문:

Switch (expression) ( case value1: // ... 식이 "value1"로 평가되면 실행될 명령 break; // 선택적 명령(사용되지 않으면 다음 switch 문이 실행됨) case value2: // ... 식이 "value2"로 평가되면 실행될 명령 break; // 선택적 명령(사용되지 않으면 다음 switch 문이 실행됨) // ... case valueN: // ... 식이 "valueN"으로 평가되면 실행될 명령 break; // 선택적 명령(사용되지 않으면 다음 switch 문이 실행됨) 실행됨) default: // 표현식의 결과가 값 중 하나와 같지 않은 경우 실행될 명령어 )

기본 키워드는 선택 사항입니다. 표현식의 결과가 어떤 case 값과도 같지 않을 때 실행할 명령어를 지정해야 할 때 사용합니다.

break 문은 선택 사항입니다. switch 문의 실행을 중단하고 그 뒤에 오는 명령으로 제어를 이전하도록 설계되었습니다.

예를 들어 브라우저 콘솔에 사탕 수에 대한 메시지를 표시해 보겠습니다.

Var countCandyBoys = 1, countCandyGirls = 2, 메시지; switch (countCandyBoys + countCandyGirls) ( case 1: message = "One candy"; break; case 2: case 3: message = "Two or three candy"; break; case 4: message = "Four candies"; break; default: message = "Not one, not two, not three or four candy"; ) // 메시지를 콘솔에 출력 console.log(message);

위의 예에서 평가된 표현식은 3입니다. 따라서 message = "Two or three candies" 및 break 문이 실행됩니다. break 문은 switch 문의 추가 실행을 중단하고 다음 문으로 제어를 이전합니다. console.log(메시지) . 콘솔에 "Two or three candies"라는 메시지를 출력합니다.

예를 들어 콘솔에 현재 요일을 표시해 보겠습니다.

var 일 = ""; switch(new Date().getDay()) ( case 0: day = "일요일"; break; case 1: day = "Monday"; break; case 2: day = "Tuesday"; break; case 3: day = "Wednesday"; break; case 4: day = "Thursday"; break; case 5: day = "Friday"; break; case 6: day = "Saturday"; break; default: day = "알 수 없는 요일 주"; ) console.log("오늘은 " + day.toLowerCase() + ".");

break 문을 사용하지 않는 예:

varresult = "성공"; switch (결과) ( case "success": console.log("Success!"); case "invalidCaptcha": console.log("Invalid captcha!"); default: console.log("Error!"); )

이 예에서 switch 문 표현식은 success 와 같습니다. 따라서 console.log("Success!") 문이 실행되어 "Success!"라는 메시지가 출력됩니다. 콘솔에. 그러나 그 뒤에 break 문이 없기 때문에 스크립트 실행은 다음 변형에서 계속됩니다. 따라서 명령은 경로에서 중단이 발생하거나 switch 문의 끝에 도달할 때까지 실행됩니다. 이 예제를 실행하면 콘솔에 "Success!"라는 3개의 메시지가 표시됩니다. , "잘못된 보안 문자!" 그리고 "오류!" .

경우에 따라 이 동작이 필요할 수 있지만 이 경우에는 그렇지 않습니다. 여기는 그냥 실수입니다.

수정된 예:

varresult = "성공"; switch (결과) ( case "success": console.log("Success!"); break; case "invalidCaptcha": console.log("Invalid captcha!"); break; default: console.log("Error!"); )

논리 연산자

JavaScript는 다음 논리 연산자를 구분합니다.

  • && - 논리 "AND";
  • || - 논리 "OR";
  • ! -논리적 "NOT".

만약에 부울 표현식피연산자1 && 피연산자2 부울 값이 사용되면 이 식의 결과는 각각 참이면 참이 됩니다. 그렇지 않으면 이 표현식의 값은 false 가 됩니다.

거짓 && 거짓 // 거짓 참 && 거짓 // 거짓 거짓 && 참 // 거짓 참 && 참 // 참

부울 표현식 operand1 && operand2가 부울이 아닌 값을 사용하는 경우 이 표현식의 결과는 false 로 캐스트될 수 있는 경우 operand1 입니다. 그렇지 않으면 이 표현식의 결과는 operand2 가 됩니다.

5 && 0 // 0 1 && 5 // 5 "문자열" && 정의되지 않음 // 정의되지 않음 "문자열1" && "문자열2" // "문자열2"

if 논리식 operand1 || operand2 부울 값이 사용되면 이 표현식의 결과는 그 중 적어도 하나가 참이면 참이 됩니다. 그렇지 않으면 이 표현식의 값은 false 가 됩니다.

거짓 || 거짓 // 거짓 참 || 거짓 // 참 거짓 || 참 // 참 참 || 진짜 진짜

if 논리식 operand1 || operand2는 부울이 아닌 값을 사용하고 true로 캐스트할 수 있는 경우 이 표현식의 결과는 operand1입니다. 그렇지 않으면 이 표현식의 결과는 operand2 가 됩니다.

5 || 0 // 5 1 || 5 // 1 "라인" || 정의되지 않음 // "문자열" "문자열1" || "라인2" // "라인1"

부울 표현식!operand1은 operand1이 false이거나 해당 값으로 캐스트될 수 있는 경우 true로 평가됩니다. 그렇지 않으면 이 표현식은 false 로 평가됩니다.

거짓 // 참 !참 // 거짓 !"문자열" // 거짓 !5 // 거짓"



관련 기사: