아래와 같이 같은 코드가 반복되는 것을 지양해야 한다.
//1. console.log('Hello Dabin!')
console.log('Hello Dabin!')
console.log('Hello Dabin!')
console.log('Hello Dabin!')
console.log('Hello Dabin!')
console.log('Hello Dabin!')
//2. 함수 선언 후 5번 실행
function sayHelloToDabin () {
console.log('Hello Dabin!')
}
sayHelloToDabin()
sayHelloToDabin()
sayHelloToDabin()
sayHelloToDabin()
sayHelloToDabin()
동일한 동작을 조건을 만족할 때 가지 반복해서 수행한다.
for (let step = 0; step < 5; step++){
console.log ('Hello Dabin!')
} // step 대신 i를 사용하기도 한다.
/*
for (초기 상태; 조건; counter변화) {
수행할 동작
}
*/
for (let i = 1; i < 11; i++) {
console.log(i)
}
for (let i = 0; i<10; i++) {
console.log(i + 1)
}
let myArray = []
//반복적으로 100부터 100까지 .push
for (let i = 100; i < 111; i++) {
myArray.push(i)
}
console.log(myArray)
let colors = ['red', 'blue', 'orange', 'black']
for (let i = 0; i < 4; i++) {
console.log(colors[i])
}
/*
"red"
"blue"
"orange"
"black"
*/
let myNumbers = [10, 20, 30, 40]
for (let i = 0; i < 5; i++) {
console.log(myNumbers[i] + 1)
}
/*
11
21
31
41
*/
array에 변화가 생기면 for문도 수정해야해서 비효율적이다. 따라서 .length를 사용하여 작성하는 것이 편하다.
let myNumbers = [10, 20, 30, 40]
for (let i = 0; i < myNumbers.length; i++) {
console.log(myNumbers[i] + 1)
}
function getAllLetters(str) {
let strArray = [];
for (let i = 0; i < str.length; i++) {
strArray.push(str[i]);
}
return strArray;
}
//처음보는 사람은 0, 봤던 사람은 1로 표현된 배열이 준비되어 있다.
//처음 본 사람에게는 안녕하세요, 봤던 사람에게는 또 만나네요
//라는 인삿말을 남기는 인사봇을 만들어보자.
const helloBot = people => {
let result = [];
for(let i = 0; i < people.length; i++){
if(people[i] == 0){
result.push('안녕하세요')
}
else {
result.push('또 만나네요')
}
}
return result
}