>  기사  >  웹 프론트엔드  >  javascript_javascript 스킬로 매일 배워야 하는 조건 분기

javascript_javascript 스킬로 매일 배워야 하는 조건 분기

WBOY
WBOY원래의
2016-05-16 15:15:07990검색

안녕하세요 여러분, 오늘은 계속해서 연산자에 대해 간략하게 설명했습니다. 오늘의 작업은 주로 논리적 조건부 분기와 루프를 설명하는 것입니다.
먼저 우리가 흔히 접하게 되는 티켓 구매를 활용해 보겠습니다. 티켓 가격은 사람마다 다르지만 우리는 모두 동일한 티켓 구매 행위를 수행할 것입니다. BuyTicket 기능으로

//代码
function BuyTicket(){
  console.log("请付款200元");
}

사실 이 기능 본체에 결함이 있다는 것은 다들 아실 겁니다. 각자가 티켓을 사러 갈 때 이 기능을 실행합니다. 군인이나 학생이라면 이 기능을 사용할 수 없습니다. 이러한 문제를 해결하려면 함수를 하나만 더 작성하면 됩니다. 그러면 우리의 자바스크립트 언어가 분기문을 제공하므로 이러한 문제를 쉽게 수정할 수 있습니다. 다음 수정된 코드를 살펴보겠습니다. 🎜>

function BuyTicket(identity){
  if(identity == "学生"){
    console.log("请付款100元");
  }
  if(identity == "军人"){
    console.log("请付款150元");
  }
  if(identity == "普通人"){
    console.log("请付款200元");
  }
}

//模拟3种人去买票
BuyTicket("学生");
BuyTicket("军人");
BuyTicket("普通人");

이렇게 사용하는 것이 이전 작성 방법보다 더 과학적인가요? 나중에 천천히 업그레이드해서 프로그램의 귀여움을 모두가 이해하게 될 것입니다.

위의 예를 통해 이러한 함수가 분기 문제를 해결할 수 있음을 쉽게 알 수 있습니다. 이제 if 분기 구문을 설명하겠습니다


 if(条件){
  //执行语句
}
조건은 앞서 언급한 것, 비어 있지 않은 객체, 정의되지 않은 객체, 부울 값 true, 0이 아닌 숫자, 모든 문자열입니다. 함수 본문에서는 == 비교 연산자를 사용하여 연산하고 불리언 값을 구하는 것은 우리가 자주 사용하는 방법이기도 합니다. 또한 다른 값을 조건으로 사용할 수도 있습니다.

A: 조건이 모두 성립되었으므로 "실행됨"이라는 단어가 인쇄됩니다. B: 조건이 if 조건의 정규 값이 아니므로 실행되지 않습니다. 참고: 여기서는 모두 명확한 값을 사용합니다. 때로는 이전 BuyTicket 함수에서 사용된 == 연산과 마찬가지로 반환 값이 실행됩니다. false인 경우 BuyTicket을 실행할 때마다 전달된 값은 한 가지 조건만 충족할 수 있습니다.

다음으로 완전한 if 분기를 배워보겠습니다


//第一种,两个分支
if(条件){
  //执行
}else{
  //执行
}
사진을 보시면 바로 이해가 되실 겁니다

A: 이전 코드가 실행됩니다. B의 조건이 적합하지 않으므로 else 블록의 문이 실행됩니다. 매우 간단하고 많은 설명이 필요하지 않습니다.

두 개의 분기가 있는 경우 두 분기 중 하나가 항상 실행되며 동시에 실행되지는 않습니다


//第二种,多个分支
if(条件){
  //执行
}else if(条件){
  //执行
}else if(条件){
  //执行
}…else if(条件){
  //执行
}else{
  //执行
}
여러 분기의 경우 하나만 실행됩니다. 분기 중 하나가 실행되면 다음 조건 비교가 계속되지 않습니다. if 블록을 작성하는 것이 더 효율적인 방법입니다. 이는 매우 비효율적인 작성 방법인 BuyTicket 함수와 같습니다. 따라서 BuyTicket 함수를 변환할 수 있습니다.


//代码 
funciton BuyTicket(identity){
  if("学生"){
    console.log("请付款100元");
  }else if("军人"){
    console.log("请付款150元");
  }else{
    console.log("请付款200元");
  }
}
이런 방식은 좀 더 과학적이며, 실행 효과는 이전과 동일합니다. 조건이 충족되면 실행 효율이 높다는 점입니다. 다른 조건 블록과 일치하지 않고 실행됩니다. 이는 이전에 작성된 함수 코드보다 효율적입니다. 그러나 다중 분기 대체 방법도 있습니다. 먼저 구문을 살펴보겠습니다.


switch(表达式){
  case 常量表达式1:
    //执行
    break;
  case 常量表达式1:
    //执行
    break;
  case 常量表达式1:
    //执行
    break;
  default:
    //执行
    break;
}
위에서 아래로 실행하는 과정은 표현식을 사용하여 다음 상수 표현식을 하나씩 일치시키는 것입니다. 일치하면 각 케이스 블록 뒤에 break 키워드를 추가해야 합니다. 후속 케이스 블록은 break가 발생할 때까지 순차적으로 실행되므로 적절한 상황에서는 이 기능을 활용할 수도 있습니다. 좋아요, 먼저 스위치 구조를 사용하여 이전 BuyTicket 기능을 수정해 보겠습니다


기본 블록은 일치하는 표현식이 없을 때 기본적으로 이 코드 블록을 실행한다는 의미입니다. 이 블록도 마지막 코드 블록이므로 break 키워드도 생략할 수 있습니다.

요약하자면 오늘은 조건 분기 및 기타 지식인 if--else, if--else if--else, 스위치에 대해서만 이야기했습니다. 글을 쓰는 데는 일정한 시간이 있고 공간은 제한되어 있습니다. 다음 글은 글쓰기 사이클에 관한 것입니다. 먼저 소화하고 다음 글을 계속하겠습니다.

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