분기문이라고도 하며, 어떤 특정 조건에 따라서 수행 루트를 분기하여 처리하는 문법
기본적으로 자바스크립트는 유저와의 상호작용에 의해 작동하기 위한 언어이다. 이 말인 즉슨 사용자로부터 데이터를 입력받아 어떠한 기능을 동작한다는 것을 의미한다.
하지만, JS가 이러한 동작을 하기 워해서는 브라우저가 필요하다. 자바스크립트는 기본적으로 브라우저에서 동작하는 언어이기 때문이다.
하지만, 매번 브라우저를 열어서 데이터를 입력받는 것은 번거로울 수 있기 때문에 아래의 코드를 이용하면 브라우저를 열지 않고도 작동을 확인할 수 있다.
const readline = require('readline');
const rl = readline.creatInterface({
input: process.stdin,
output: process.stdout,
});
rl.question('프로그래밍 언어 이름을 입력하세요: ', function(data) {
console.log('가장 좋아하는 프로그래밍 언어는 ' + data + '입니다.');
rl.close();
});
const score = prompt("점수 입력: ");
if(score >= 60 && score <= 100) {
if (score >= 90) { // 중첩 if문문
console.log("You can take the scholarship");
} else{
console.log("passed");
}
} else if (score >= 0 && score <= 59) {
console.log("failed");
} else {
console.log("invalid score");
}
여기서 60점 이상 100점 이하는 합격은 합격이지만 그 안에서 90점 이상은 장학대상이기에 if문 안에서 if문을 돌려야한다. 이게 바로 중첩 if문이다.
다만 이러한 중첩문의 코드가 증가하게되면 가독성이 떨어지고 오류 발생 시, 원인이 되는 코드를 찾는 것도 쉽지가 않다. 따라서 이러한 중첩문을 축약하여 사용이 가능한데 else if문이다.
var age = prompt("나이: ");
if(19 <= age && age < 101) {
console.log("adult");
} else if(0<= age && age < 19) {
console.log("not adult");
} else {
console.log("invalid age");
}
var i = 0 // 초기문
while(i<10) // 반복조건
{
console.log("Hello, world");
i++ // 증감조건
}
var num = parseInt(prompt("단 입력: "));
var i = 1;
while(i<10) {
console.log(`${num} * ${i} = ${num * i}`);
i++
}
반복문의 중첩
: 단을 기준으로 단수와 곱해지는 수가 1부터 9까지 증가해야만 비로소 단이 1 증가하게되는 로직
함수 사용 이유
함수와 메소드의 차이
지역변수/전역변수/매개변수
1. 지역변수