UNIT 5 : Javascript 기초
BIL: conditionals
코드를 불필요하게 중복해서 작성하지 않아도 컴퓨터가 반복 동작을 수행하도록 함
사용하는 경우
//1부터 5까지의 수를 모두 더하는 for
let result = 0;
for (let num = 1; num <= 5; num++) {
result = result + num;
}
console.log(result);
위 코드의 진행순서를 나열하면
for (초기값; 조건식; 증감식) {
// 실행할 코드
}
증감식 반복 횟수를 카운트하는 역할을 하는 변수
이때 변수는 정수를 의미하는 ‘integer’의 약자인 i를 주로 사용
반복문 코드블록 내에서만 유효
코드블록 내부의 코드 실행 여부를 결정
true일 경우 코드를 실행, false일 경우 반복문 종료
코드블록 내부 코드 실행 후 초기값으로 선언된 변수를 증감시키기 위한 표현식
조건식 입력 후 조건식 평가결과가 true인 경우 코드블록 내부 코드 반복 실행
while 사용시 무한루프 주의, 조건식이 false로 평가되는 순간이 있는지 확인
사용하는 경우
while 뒤의 조건식이 true로 평가되는 동안 do 뒤 코드블록 내부 코드 반복 실행
단, 이 경우 do의 코드블록 내부의 코드가 최소 한 번은 실행
do {
console.log('코드블록 내부의 코드는 최소 한 번은 실행됩니다.')
// '코드블록 내부의 코드는 최소 한 번은 실행됩니다.'
} while (false)
초기화, 조건식, 증감식이 모두 필요한 for
조건식 입력 후 평가결과가 true인 경우 코드블록 내부 코드 반복 실행하는 while
for (let num = 0; num < 3; num++) {
console.log(num); // 0 1 2
}
let num = 0;
// 위아래의 두 코드는 같습니다
while (num < 3) {
console.log(num); // 0 1 2
num++
}
반복 진행 중 특정 조건에 따라 문제를 해결하도록 코드 작성시 복잡한 문제도 해결!
// EX1) 1 ~ 10 중 홀수만 출력
for (let i = 1; i <= 10; i++) {
if (i % 2 === 1) {
console.log(i);
}
}
// EX2) i의 홀짝 여부 확인
for (let i = 1; i <= 10; i++) {
if (i % 2 === 1) {
console.log(`${i}는 홀수입니다.`);
} else {
console.log(`${i}는 짝수입니다`);
}
}
실행 순서
2개의 반복문이 중첩된 경우 이중반복문, 3개의 반복문이 중첩된 경우 삼중반복문
for (let first = 0; first <= 3; first++) {
for (let second = 0; second <= 3; second++) {
for (let third = 0; third <= 3; third++) {
console.log(
`first는 ${first}, second는 ${second}, third는 ${third}입니다.`
);
}
}
}
입력받아 코드블록 내부 코드 실행 후 함수 실행결과를 반환하는 과정의 묶음
= 특정한 코드실행 과정을 하나의 묶음으로 묶어서 필요할 때마다 호출하여 실행
변수 선언시의 let처럼, 함수 정의시 function 사용하여 선언
function greeting () {
console.log('hello world')
};
let으로 변수 선언 후 함수를 할당하는 형태로 표현
let expression = function () {
console.log('함수표현식');
}
함수 내부 코드는 함수 호출시 실행
// 함수선언문으로 정의된 함수 호출
function greeting () {
console.log('hello world')
};
greeting()
-
// 함수표현식으로 정의된 함수 호출
let greeting = function () {
console.log('hello world')
};
greeting()
매개변수, 전달인자 활용시 함수 외부에서 함수 내부로 값을 전달 가능
function greeting (name) {
console.log('hello ' + name);
}
'greeting'이라는 함수가 'name'이라는 매개변수를 가지고 있습니다.
현재는 아무것도 할당되어 있지 않으므로 'name'은 'undefined'로 초기화되어 있습니다.
이 매개변수에 값을 할당하려면 전달인자를 사용합니다.
매개변수: 함수 정의시 소괄호 내부에 추가, 함수 코드 블록에서 변수 취급
전달인자: 함수 호출시 소괄호에 값을 넣어 매개변수에 값을 할당
선언 위치에 따라 결정된 매개변수와 함수 내부에서 선언된 변수의 유효범위
함수 외부에서 함수의 결과값을 사용할 수 있도록 함수의 실행결과를 외부로 반환
return의 역할
1. function add (x, y) {
return x + y;
console.log('실행되지 않습니다');
}
2. function add (x, y) {
return x + y;
}
console.log(add(3, 2));
3. function add (x, y) {
return x + y;
}
let result = add(3, 2);
console.log(result);
4. function add (x, y) {
return x + y;
}
let result = add(3, 2) + add(5, 7);
console.log(result);