[TIL] 조건문 (if 문) - 1주차 회고

이재훈·2020년 8월 30일
0

'조건문'이란?

대표적으로 if문이 있다.

if문은 지정한 조건이 Boolean 타입으로 인해 실행여부가 결정이 되는데
걸어둔 조건이 'true'일 경우 명령문인 statement를 실행하며
만약, 조건문이 'false'일 경우 else if 혹은 else로 다른 statement를 실행 할 수 있다.

Boolean 타입이란?
출력되는 값이 'true' 혹은 'false'. 어떤 값이 참인지 거짓인지 판별하는 작용을 한다.
한마디로, '기다, 아니다'라고 생각하면 편하다.

'A' === 'A' // true
'apple' === 'banana' // false

if 조건문 문법

if (조건1) {
  명령문1 (statement)   // 조건이 true일 경우 실행, false일 경우 else if로 실행
}
else if (조건2) {
  명령문2		// 조건 2마저도 false라면 아래로!
}
else {
  명령문3		// 위의 조건들이 모두 false라면 명령문 3을 실행
}

처음 if문을 접했을 때, 대충 아래와 같이 감을 잡았다.

"야, A 한 번 해봐봐, --> if(){}
안되면 B로 가자, --> else if(){}
그것도 아니면 C로 가자. --> else if(){}
이도저도 아니면 D이겠지! --> else {}"

다시 말하면

"A가 true면 a+를 실행해 --> if( A ){ a+ }
A가 아니라 B라면 b+을 실행해 --> else if( B ){ b+ }
B도 아니라 C가 true라면 c+을 실행해 --> else if( C ){ c+ }
이도저도 아니면 d+를 실행해! --> else { d+ }"

즉, if문은 단계별로 작동하는 것을 볼 수 있다.
조건1을 만족하면 명령문1(statement)를 실행하고, 만족하지 않으면 명령문2를 실행하라는 조건문이다.

※ else if의 갯수 제한은 없다.

응용 (연산자 활용)

※ 비교 연산자

  • === ---> 같다
  • !== ---> 같지 않다.
  • <= or >= ---> 작거나 같다 or 크거나 같다.
  • && ---> 그리고 (and)
  • || ---> 혹은 (or)

문제) 20세 이상의 남성에게 apple을 던져주자.

if ( A === 'female' && A <= 20 ) {
  return 'apple'	// 남성이 아니므로 false, 실행 x -> 다음단계로.
}
else if( A === 'male' && A <= 20 ) {
  return 'apple'   // 남성 & 20세 이상 모두 충족하여 true -> 실행 O
}

###Potter's thought :)

if문은 영어의 조건절인 if와 접목시키면 아주 쉽게 이해가 된다.
다만, 조건1에서든 조건2에서든 true가 충족이되어 명령문(statement)가 실행이 되면 다른 조건을 살펴볼 필요없이 if문은 종료가 됨을 주의하도록 하자!


if문을 공부하면서 문득 이런 생각이 들었다.
"앞으로 남은 인생은 if문과 '비슷한' 삶을 살아야겠다."

개발자의 길로 들어오기 전에는 평범한 대학생 -> 입대 -> 캐나다 유학 -> 호주 워홀 -> 캐나다 대학 자퇴 -> 경찰공무원 준비 -> 평범한 직장 취업 -> 코로나 발발 -> 퇴사 -> 개발자 입문

나의 과거에 있어서
캐나다 유학은 if였으며
호주 워홀은 else if
경찰공무원 else if
취업은 else로 마무리 될 것 같았지만, else if였고
개발자 입문 또한 else if 혹은 else 일 것이다.

마치 plan A, B, C를 계획하는 것과 비슷하게 보여진다. A가 무너지면 곧바로 B 혹은 C의 플랜으로 돌입하여 실행해 옮길 수 있게끔.
(물론 위의 if문이 이와 같이 돌아간다는 것은 아니다.)

취업에 성공했다하여 내 모든 삶이 안정적이지 않음을 인지해야하고 앞으로 다가올 변수와 경우의 수에 대한 대비를 항상 해둬야하지 않을까 라는 소소한 깨달음을 if문 덕분에 다시 한 번 리마인드 하게 되었다.

profile
코딩에서 인생을 배우다.

0개의 댓글