NBC - JS 1주차 강의 정리 : 반복문

2024. 7. 23. 22:23·프론트엔드/React

 

 

1. forEach

- 매개변수에 함수를 넣는 것을 콜백함수라 함.

- Item에 numbers가 하나하나 들어가며 순회를 돈다는 의미

let numbers = [2, 4, 1, 5, 3];
numbers.forEach(function (item) {
  console.log("item 입니다 => ", item);
});

// item 입니다 => 2
// item 입니다 =>  4
// item 입니다 =>  1
// item 입니다 =>  5
// item 입니다 =>  3

 

 

2. map

- 함수 안에는 무조건 리턴문이 들어감.

- map이 가공해서 새로운 배열을 만들어 주기 때문에 새로운 배열을 받아줘야함.

- 항상 원본 배열의 길이 만큼 return됨 (return이 없다면 ㅁundefined로 차서 배열이 나옴)

let newNumbers = numbers.map(function (item) {
  return item * 2;
});
console.log(newNumbers); // [ 4, 8, 2, 10, 6 ]

 

 

3. filter

- return에 조건이 들어감

- 조건에 해당하는 것만 나오기 때문에 배열의 길이만큼 return 되지 않음

let numberss = [2, 4, 1, 5, 3];
let filterdNumbers = numberss.filter(function (item) {
  return item === 5;
});
console.log(filterdNumbers); // [5]

 

 

4. find

- 조건에 맞는 것 중 첫번 째 것만 return됨 (배열로 받지 않음)

let findNumber = numberss.find(function (item) {
  return item > 3;
});
console.log(findNumber); // 4

 

 


 

 

5. 반복문 for

for (let i = 0; i < 10; i++) {
  console.log(i);
} // 0~9까지 출력

 

쉽게 설명해서 

i라는 변수는 0부터 시작

i라는 변수는 10에 도달하기 전까지 계속 할거야

i라는 변수는 한 사이클이 돌고나면 1을 더할거야 (중괄호가 실행되는게 한 사이클)

 

배열과 for문은 짝꿍!!

 

 

for ~in문

- 객체의 속성을 출력하는 문법

let person = {
  name: "홍길동",
  age: 30,
  gender: "남자",
};

for (let key in person) {
  console.log(key + ":" + person[key]);
}
//name:홍길동
// age:30
// gender:남자 출력

 

 

 


 

 

6. while 문

let i = 0;
while (i < 10) {
  console.log(i); // 메인로직
  i++; // 증감
} // 0~9 출력

 

 

3초과 100 미만의 숫자 중 5의 배수 뽑는 법

let k = 3;
while (k < 100) {
  if (k % 5 === 0 && k > 5) {
    console.log(k);
  }
  k++;
}

 

 

do ~while

기본 문법

let n = 0;
do {
  console.log(n);
  n++;
} while (n < 10);
// 0~9 출력

 

 

오류

do {
  console.log(n);
} while (n > 10);
// 0 출력 (처음에 0이 그냥 console.log에 찍히니까)

 

 

break

true인 경우 반복문 끝내기

// break
for (let i = 0; i < 10; i++) {
  if (i === 5) {
    break; // 5가 되면 for문을 그만 돌리고 끝내라
  }
  console.log(i);
} // 0~9까지 출력

 

 

continue

true인 경우 다음으로 넘어가기

// continue
for (let i = 0; i < 10; i++) {
  if (i === 5) {
    continue; // 5가 되면 무시하고 다음으로 넘어가라
  }
  console.log(i);
} // 012346789 출력

 

 

 

'프론트엔드 > React' 카테고리의 다른 글

NBC - JS 개인프로젝트 : api로 받아온 데이터 화면에 뿌리기 (promise.all, aysnc, await)  (0) 2024.07.26
NBC - JS 2주차 강의 정리 : Map, Set  (0) 2024.07.24
NBC - JS 2주차 강의 정리 : 일급 객체로서의 함수  (1) 2024.07.24
NBC - JS 2주차 강의 정리 : 구조분해할당, 전개 구문(Spread Operator)  (0) 2024.07.24
NBC - JS 1주차 강의 정리 : 객체, 배열  (0) 2024.07.23
'프론트엔드/React' 카테고리의 다른 글
  • NBC - JS 2주차 강의 정리 : Map, Set
  • NBC - JS 2주차 강의 정리 : 일급 객체로서의 함수
  • NBC - JS 2주차 강의 정리 : 구조분해할당, 전개 구문(Spread Operator)
  • NBC - JS 1주차 강의 정리 : 객체, 배열
장쫑이이
장쫑이이
  • 장쫑이이
    JongHoy
    장쫑이이
  • 전체
    오늘
    어제
    • 코딩공부하기 (41)
      • 프론트엔드 (41)
        • Next.js (12)
        • React (16)
        • TypeScript (2)
        • 상태관리 (1)
        • HTML&CSS (1)
        • 기타 (9)
      • 과거 공부 내용 (0)
        • JSCODE 그룹스터디 (0)
        • JS 객체 지향 프로그래밍 (0)
        • 리엑트 (0)
        • 제로초 - 웹 게임을 만들며 배우는 리엑트 (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    팀프로젝트
    slice
    행렬의 덧셈
    github
    While문
    속성 추가
    reduce
    토글
    isNan
    setAttribute
    LastIndexOf
    필터링
    git
    map
    이중 for문
    useState
    Filter
    styled-components
    유클리드 호제법
    destructuring
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.1
장쫑이이
NBC - JS 1주차 강의 정리 : 반복문
상단으로

티스토리툴바