Wanna be Brilliant Full-Stack Developer

JavaScript Conditionals (조건문) 본문

Front-End

JavaScript Conditionals (조건문)

Flashpacker 2022. 2. 10. 03:19

조건문은 true 인지 false인지 알려주기떄문에 매우 중요하다!

예를 들어 사용자가 로그인이 되어 있다면 무언가를 보여준다든지 

아니면 사용자가 무언가를 할떄 반응 하는것을 만들떄 

키워드는 'IF'다. 

 

value의 type을 보려면  "type of" 라는 키워드를 사용해야한다. 

const age = prompt("How old are you? ")

console.log(typeof age);

어떻게 string을 number로 바꿀수 있는가? 

const age = prompt("How old are you? ")

console.log(typeof "15", typeof parseInt("15"));

parseInt는 숫자만 처리할수 있고 다른것으 들어오면 NaN(Not a Number) 을 확인 할수 있다. 

 

Function은 내부에서부터 외부로 실행된다. 

const age = parseInt(prompt("How old are you? ") );

prompt를 먼저 실행하고 입력받은 string을 parseInt가 number로 바꾼다!

 

 

무언가 NaN인지 확인하는 방법을 알아볼것이다 

isNaN은 숫자인지 아닌지 boolean으로 return으로 반환한다.

const age = parseInt(prompt("How old are you? ") );

console.log(isNaN(age));

Number면 결과는 false (isn't not a number) , 다른것은 true ( is not a number) 

 

조건문의 조건은 true와 false 만있다.  만약에 true이면 그 다음 코드를 실행할것이고

false면 실행하지 않을것이다. 

 

const age = parseInt(prompt("How old are you? ") );

if(isNaN(age)) {
    console.log("Please write a number");
}else {
	console.log("Thank you for writing your age.");
}

1) 처음에 prompt가 string 을 입력받고 2) parseInt가 String을 number로 바꾸려고 시도하고 

3) 조건에 숫자이면 결과는 false이기때문에 아무 결과도 나오지 않고 만약에 숫자가 아니면 true (is not a number) 이기 떄문에 "Please write a number"가 반환된다. 

 

조건이 여러가지 있을경우에는 else if!

const age = parseInt(prompt("How old are you? ") );

console.log(isNaN(age));

if(isNaN(age)) {
    console.log("Please write a number");
} else if(age < 18) {
    console.log("You are too young.");
} else {
    console.log("you can drink");
}

만약에 숫자가 아니면 false가 되어 두번째 조건인 나이가 18살 이상인지 확인하게 되고 18살 밑이면  true로서 you are too young이고  18살 이상이면 false로서 you can drink가 반환된다.

 

 

두가지 조건을 동시에 확인하는 경우

이중 하나라도 true이면 else는 작동하지 않는다! ( else는 필수가 아니라 옵션이다) 

const age = parseInt(prompt("How old are you? ") );

console.log(isNaN(age));

if(isNaN(age) || age < 0 ) {
    console.log("Please write a real positive number");
} else if(age < 18) {
    console.log("You are too young.");
} else if(age >= 18 && age <= 50) {
    console.log("you can drink");
} else {
    console.log("you can't drink");
}

&&( AND) 조건은 두가지의 조건이 다 true이여야지 TRUE! 

|| (OR) 은 둘중 하나라도 True이면 true로 반환 (Ex 10>8 (true) , 10 <8 (false) ----> true 

 

const age = parseInt(prompt("How old are you? ") );

console.log(isNaN(age));

if(isNaN(age) || age < 0) {
    console.log("Please write a real positive number");
} else if(age < 18) {
    console.log("You are too young.");
} else if(age >= 18 && age <= 50) {
    console.log("you can drink");
} else if (age === 100) {
    console.log("wow you are wise");
} else if (age > 80) {
    console.log("you can do whatever you want");
}

하나의 = (eqauls)는 value를 할당한다

===세개는 age가 100 과 같은지? 

!== ~아니라면 100 살이 아닌지 확인

 

if ( (a && b) || (c && d)) {
    
}

C 와 D부터 확인하는데 Javascript는 작은 괄호부터 시작해서 큰괄호로 넘어간다!

'Front-End' 카테고리의 다른 글

JavaScript Searching For Elements!  (0) 2022.02.10
JavaScript On the Browser!  (0) 2022.02.10
JavaScript Returns  (0) 2022.02.10
JavaScript Recap (Variable , Array , Function )  (0) 2022.02.10
JavaScript Functions & Arguments  (0) 2022.02.10