-
반복문정리JavaScript/Basic 2022. 10. 5. 09:32
JavaScript에서 사용할 수 있는 반복문의 형태
1. while 문
2. do / while 문
3. for 문
4. for / in 문
5. for / of 문
6. for each
while문
while (표현식) { 표현식의 결과가 참인 동안 반복적으로 실행하고자 하는 실행문; } ex) var i = 1; while(i<10){ // i가 10이하일때만 반복 console.log(i); }
do while문
do { 표현식의 결과가 참인 동안 반복적으로 실행하고자 하는 실행문; } while (조건문); // 조건문을 판단하기 전에 do 블록의 코드를 먼저 실행 ex) let i = 1; do { console.log(i); i++; } while(i<=5);
for문
for (초기식; 표현식; 증감식) { 표현식의 결과가 참인 동안 반복적으로 실행하고자 하는 실행문; } ex) for(var i=1; i< 10; i++){ console.log(i) }
for / In문
for / in 문은 일반적인 for 문과는 전혀 다른 형태의 반복문 for / in 문은 해당 객체의 모든 열거할 수 있는 프로퍼티(enumerable properties)를 순회하도록 한다 for (변수 in 객체) { 객체의 모든 열거할 수 있는 프로퍼티의 개수만큼 반복적으로 실행하고자 하는 실행문; } ex) let brands = ['Google', 'Kakao', 'Naver', 'Kakao', "CoffeeBean","Starbucks"]; for(let idx in brands){ console.log() }
for / of 문
for / of 문은 반복할 수 있는 객체(iterable objects)를 순회할 수 있도록 해주는 반복문 for (변수 of 객체) { 객체의 모든 열거할 수 있는 프로퍼티의 개수만큼 반복적으로 실행하고자 하는 실행문; } ex) let brands = ['Google', 'Kakao', 'Naver', 'Kakao', "CoffeeBean","Starbucks"]; for(let element of brands){ console.log(element); } ex) // 투표 결과 리스트 let votes = [ '이재식', '이재식', '이규하', '이규하', '이규하', '이재식', '이재식', '이규하', '이규하', '이재식', '이규하', '이규하', '이규하', '이규하', '이재식', '이재식', '이규하', '이재식', '이재식', '이재식', '이재식', '이재식', '이규하', '이규하', '이규하', '이규하', '이규하', '이재식', '이규하', '이규하', '이규하', '이규하', '이재식', '이규하', '이규하', '이규하', '이재식', '이재식', '이재식', '이규하', ]; // 풀이 1 let voteCounter = {}; for (let name of votes) { // 코드를 작성하세요. if(name in voteCounter === false) { // if(!(name in voteCounter)) {} voteCounter[name] = 1 }else{ voteCounter[name] += 1 } } // 풀이2 let voteCounter = {}; for (let name of votes) { // 코드를 작성하세요. if (name in voteCounter) { voteCounter[name]+= 1; } else { voteCounter[name] = 1; } } // 후보별 득표수 출력 console.log(voteCounter); // { '이재식': 17, '이규하': 23 }
forEach
forEach 메서드도 배열을 순회하기 위해 사용되지만, 기본적인 for 반복문과는 다른 방식으로 함수를 사용합니다.
forEach 메서드는 다음 매개변수(parameter)와 함께 배열의 각 요소에 적용하게 될 콜백 함수(callback function)를 전달합니다.
Current Value (명명된 매개변수) - 처리할 현재 요소
Index (선택적 매개변수) - 처리할 현재 요소의 인덱스
Array (선택적 매개변수) - forEach 메서드를 호출한 배열
=====================================
- 우선 forEach 메서드를 사용해 배열을 순회하려면 콜백 함수 또는 익명 함수가 필요
- 콜백 함수는 각 요소에 대해 실행되며, 배열의 요소를 나타내는 매개변수를 반드시 하나 이상 사용해야 합니다.
기본 syntax
numbers.forEach(function(){
// code
});
==================
// 함수선언
numbers.forEach(function(number){
console.log(number);
});
// 화살표함수
numbers.forEach(number => console.log(number));
==============================
선택적 매개변수
인덱스(Index)
이어서 선택적 매개변수에 대해 알아봅시다.
첫 번째 선택적 매개변수는 각 요소의 순서를 나타내는 인덱스입니다.
즉 두 개의 매개변수를 활용하여 메서드를 사용하면 두 번째 매개변수를 통해 요소의 인덱스를 확인
const numbers = [1, 2, 3, 4, 5];
numbers.forEach((number, index, array) =>{
console.log('index ' + index + ' value: ' + number, '원본 array ' + array);
});
index 0 value: 1 원본 array 1,2,3,4,5
index 1 value: 2 원본 array 1,2,3,4,5
index 2 value: 3 원본 array 1,2,3,4,5
index 3 value: 4 원본 array 1,2,3,4,5
index 4 value: 5 원본 array 1,2,3,4,5
==============================
=============================='JavaScript > Basic' 카테고리의 다른 글
스코프(Scope) (0) 2022.12.03 자바스크립트(JavaScript)이란?! (0) 2022.11.22 setTimeout과 setInterval을 이용한 호출 스케줄링 (0) 2022.11.18 객체(Obejct) & 메서드(Method) (0) 2022.09.15 ArrowFunction (0) 2022.09.02