일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- 프로그래머스
- superstarjypnation
- 회고
- 프로토타입
- vercel
- redux
- 큐
- 생활코딩
- javascript
- 자바스크립트
- html
- mysemester
- 카카오
- 스택
- 30daysdowoonchallenge
- web
- React
- 백준
- 해시테이블
- Til
- 자료구조
- CSS
- UX
- 운영체제
- useState
- REST_API
- 코드스테이츠
- Next.js
- level1
- UI
- Today
- Total
데굴데굴
TIL: 2022-08-24 본문
⚙️ 오늘 배운 주제
JavaScript 기초 제어문
🐹 오늘의 기분
와우 오늘 문제는 정말 매콤했다! 저번 주 금요일 ot를 제외하면 이제 막 3일차에 접어드는데 코플릿 문제가 확 어려워져서 이제 진짜 부트캠프가 시작되는구나... 실감되기 시작했다. 페어분께 코드를 설명하면서 내가 애매하게 알고 있었던 부분이 뭔지 제대로 파악할 수 있어 좋았다. 혼자 했다면 내가 다 알고 있다고 생각하고 어물쩡 넘어갔을 것 같은데 페어분의 질문에 내가 작성한 코드를 다시 한 번 검토해보고 생각해보면서 개념 정립을 다시 해볼 수 있어 좋았다. 페어프로그래밍은 나같은 극도의 I형 인간에게 조금 힘든 방식인 건 맞지만, 그래도 얻어가는 것이 더 많은 것 같다. 다음 페어분과는 또 어떤 경험을 하게 될 지 여전히 두려움 반, 설렘 반이다. 내가 피해가 되지 않았으면..!
또 의사코드를 작성하는 것이 확실히 도움되는 걸 느꼈다. 복잡한 코드를 짜야 할 때 차근차근 생각해보면서 자연어로 써보면 나중에 코드를 봤을 때 내가 무슨 의도로 이 코드를 작성했는지도 금방 알 수 있고, 다른 사람에게 설명할 때에도 추상적으로 설명하지 않아도 되어 효율적이다.
프로그래밍을 생전 처음으로 접했을 때 구구단 출력하는데에도 애를 먹었던 게 생생한데 이제는 수월하게 할 수 있어서 뿌듯하다.
앞으로 막히는 부분이 나와도 꾸준히 하면 언젠가는 이해하는 순간이 올 것이라고 믿으며 열심히 해봐야겠다
🗝 키워드
반복문, for문, while문, 이중반복문, break, 소수, 개발자도구 debugger
🗣 스스로에게 설명
자바스크립트의 for 반복문 작성 방법은 아래와 같다.
for (초기화; 조건식; 증감문) {
반복할 내용;
}
for 반복문을 중첩하여 이중 반복문을 만들 수 있다.
이중 반복문은 안쪽의 반복문이 다 돌고 난 후 바깥쪽의 반복문에서 증감문이 실행된다.
구구단 2단부터 9단까지 출력하고 싶다면 이중 반복문을 이용한다.
for (let i = 2; i <= 9; i++) {
for (let j = 1; j <= 9; j++) {
console.log(i * j);
}
}
while문 작성 방법은 for문과 살짝 다르다.
for문에서는 변수의 초기화와 증감문이 괄호 하나에서 전부 이루어지지만, while문은 그렇지 않다.
// while문
변수 초기화;
while (조건식) {
반복할 내용;
증감문;
}
while문 바깥에서 변수를 미리 초기화해둔후 반복문을 작성한다.
만약 여기서 while문 안에 증감문을 작성하지 않는다면 반복문이 영원히 실행된다.
반복문을 빠져나오게 하고 싶을 땐 break를 이용한다.
소수는 1과 자기 자신만을 약수로 갖는 수이다.
1은 소수가 아니고, 2를 제외한 모든 짝수 또한 소수가 아니다.
개발자도구에서 테스트하고 싶은 코드를 입력한 후 debugger; 를 입력하면 디버거를 실행할 수 있다.
그 동안 일일이 vscode에 복사해서 디버깅했는데 개발자도구를 적극적으로 활용해야겠다.
❓ 막히는 or 막혔던 부분
소수 문제가 정말..! 어려웠다. 예전에 백준에서 파이썬으로 풀었지만 그 때 제대로 이해하지 않고 넘어간 게 발목을 제대로 붙잡았다ㅎ 이번 학습을 통해 소수를 구하는 방법을 완전히 이해할 수 있어 좋았다!
나눗셈과 나머지 연산자를 쓰지 않고 짝/홀수를 판별하는 코드를 구현하는 것이 어려웠다. 짝홀 문제엔 마법의 숫자 2를 기억하기😉
이중반복문은 잘 와닿지 않는 개념 중 하나였는데 연습문제를 계속 풀고 또 설명해보면서 점점 윤곽이 보이기 시작했다.
🔍 공부가 더 필요한 부분
문자열 slice와 substring 직접 실습해보기
ParseInt가 뭐지? (+ 설명이 잘 된 글이 있어 가져와봤다. 🔗 ParseInt와 Number의 차이 🔗 )
🛠 질문 만들기
- 구구단을 출력하고 싶다면 이중 반복문 중 안쪽 반복문에서 변수의 초기값을 몇으로 설정해야 하는가?
- for문과 while문의 차이는 무엇인가?
- 특정 조건에서 반복문을 중지하고 싶다면 어떤 문법을 써야할까?
'Lesson > TIL' 카테고리의 다른 글
TIL: 2022-08-29 (0) | 2022.08.29 |
---|---|
TIL: 2022-08-26 (0) | 2022.08.26 |
TIL: 2022-08-25 (0) | 2022.08.25 |
TIL: 2022-08-23 (0) | 2022.08.23 |
TIL: 2022-08-22 (0) | 2022.08.22 |