Javascript: 조건문(prompt()함수에 대한 설명도 포함)
2024. 2. 22. 00:44ㆍJavascript Node.js
prompt()
조건문을 설명하기 앞서 다음 코드에서 prompt()라는 함수를 확인할 수 있는데
alert 창과 동일하게 웹페이지에 알림을 보여주지만 입력할 수 있는 창을 제공하고 있다.
조건문
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")
}
위 코드에서 isNaN(age) 같은경우
age의 값이 숫자가 아닌경우 true를 반환하고 숫자인 경우 false를 반환한다.
parseInt() 같은 경우 string으로 된 숫자를 받았을 경우 string 숫자를 number 숫자로 변경해 주는 역할을 한다.
다음 문제가 있다. 함께 풀어보자.
만약 다음과 같은 조건문이라 할때 else if (age === 100) {}이 조건이 실행이 되는가?
const age = parseInt(prompt("How old are you"));
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 >50 && age <= 80){
console.log("You should exercise");
} else if ( age > 80 ){
console.log("You can do whatever you want.");
} else if (age === 100){
console.log("wow you are wise");
}
정답은 실행이 안된다.
이유는 else if ( age > 80) {}라는 조건문 안에는 100이라는 숫자 또한 같이 포함되어져 있기 때문에 조건문을 사용할 때에는 순서에 대해 면밀히 따져보고 사용해야한다.
const age = parseInt(prompt("How old are you"));
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 >50 && age <= 80){
console.log("You should exercise");
} else if (age === 100){
console.log("wow you are wise");
} else if ( age > 80 ){
console.log("You can do whatever you want.");
}
다음과 같이 순서를 정렬해야 else if (age === 100) {}이라는 조건이 실행이 된다.
앞으로 if문을 많이 사용하게 될 것이다. 조건문 사용 시 조건에 따른 정렬 순서를 면밀히 따져보며 코드를 작성하도록 주의 하자.
'Javascript Node.js' 카테고리의 다른 글
Javascript: Object (0) | 2024.02.20 |
---|---|
VSC를 다운로드할 수 없는 환경 (0) | 2024.02.20 |
Javascript: Optional chaing (?.) (0) | 2023.12.11 |
Project: present a web page about the blog. (0) | 2023.12.08 |
How to use Access Token and Refresh Token? (0) | 2023.11.27 |