
ch – 반복문
단순한 반복을 보다 효율적이고 간결하게 할 수 있도록 하는 반복문
[학습 목표]
for문과 문자열, 숫자를 이용해 반복적으로 코드를 실행
기본적인 for문 (for (let i = 0; i < 5; i++))을 응용한 다양한 for문 생성
for문과 while문의 차이 이해
반복문에 조건문을 적용하여 특정 조건에서만 반복문 실행되게 하기
이중 for문에 대한 이해
반복문 기초
반복문: 같거나 비슷한 코드를 여러 번 실행시켜야 할 때 쓰는 구문
→ 반복할 조건을 코드로 작성
- for 구문
반복할 조건을 초기화, 조건식, 증감문 순으로 넣어준다
for(초기문;조건문;증감문){
//반복할 내용
}
ex) let sum=1;
for(1et n=2;n<=4;n=n+1){
sum=sum+1; //n=2부터 4까지 3번을 실
}
console.log(sum); //10
- while 구문
반복할 조건 중 _초기화, 증감문_은 따로 써두고 조건식만 괄호 안에 넣어준다
초기화나 증감문이 따로 필요 없는 경우에는 while문을 써도 좋다
→ while 문으로 할 수 있는 것은 for문으로도 다 가능함
초기문;
while(조건문;){ //조건만 맞으면 계속 반복함
증감문
//반복할 내용
}
var n = 0;
var x = 0;
while (n < 3) {
n++;
x += n;
}
[쉬어가기]
디버깅이란?
문제 해결을 위한 방법
- 이상한 결과가 나왔을 경우?
1.뭐가 문제인지 알아야 한다
→ 단서 확보와 단서에 대한 분석
2.문법 에러가 아닌, 로직에서 에러가 발생한 경우라면?
문제가 발생했을 것으로 생각되는 부분 선정(가설 선정)
가설이 맞는지 틀린지 실험(가설 검증)
→ ex) console.log 이용
it("getLengthOfLongestElement 함수는 가장 긴 글자의 길이를 리턴해야 합니다", function() { let output = getLengthOfLongestElement(['one', 'two', 'three']); expect(output).toEqual(5); });
한번에 여러 개의 가설을 세우지 않는다. (만일 여러개를 세운다면) 서로 독립적인 가설을 세우자
- 유용한 테스트 방법
1.경우의 수를 정리
2.경우의 수에 대해 하나씩 기대값과 실제 결과값을 비교
→ 이러한 방법: 유닛 테스트
→ 이러한 개발 방법론: 테스트 주도 개발
*if 구문과 else if 구문의 차이
블록 안에서 return하지 않는 경우 if {} if {}면 무조건 두번째 조건문에 진입하고, if {} else if {} 면 첫번째 조건문을 만족하면 두번째 조건문으로 진입하지 않습니다
[break, continue 문]
break
; 해당 구문 안의 있는 거에서 탈출한다.
증감문 진행하던거 멈추고 그냥 그 밖으로 나감.
continue
; continue의 경우 탈출은 아니고 아래 코드를 진행하지 않고
다음 단계(i+1)로 진입한다.
[소수 구하기 문제 tip]
/*note:
1. 소수 구하기에서 짝수는 항상 소수가 아니다(단 2는 제외)
2. 1도 소수가 아니다(소수는 항상 2개의 약수를 가져야 함)
3. 그러므로 조건문에서 해당 1.2. 케이스를 고려하여 초기문 i=3/ 증감문 i+=2 의 형태를 가져가는 것이 좋다
*/
'SE Bootcamp 내용 정리' 카테고리의 다른 글
css 기초 - 1 (0) | 2021.08.27 |
---|---|
html 기초 (0) | 2021.08.27 |
js - 문자열 (0) | 2021.08.25 |
js - 조건문(conditional) (0) | 2021.08.24 |
<SEB Full 34th 1주차-2> (0) | 2021.08.24 |