오늘 배운 것
자바스크립트 객체에 대한 내용을 공부했다. for in문과 for of 문을 막연하게 비슷한 반복문이라고 생각했는데, 큰 차이점이 있다는 것을 알게되었다. 또 다양한 객체 메서드를 이해하고 활용할 수 있었다.
[JavaScript] 객체 Object
객체란 무엇인가? 자바스크립트를 이루고 있는 거의 모든 것은 객체이다. 원시 타입을 제외한 나머지 값(함수, 배열, 정규표현식 등)은 객체에 속한다. 객체에서 각 요소는 프로퍼티 (key : value 쌍
friedegg556.tistory.com
배열이 빈 배열인지 확인하는 방법
라이브 세션 시간에 추가적으로 빈 배열인지 여부를 확인할 때 if (!arr.length)
를 활용하는 방법도 있다는 것을 알게 되었다. 처음에 빈 배열인지 확인하기 위해 if (arr === [])
의 평가 값을 확인하려고 했는데, 빈 배열이어도 false
가 나오는 상황이 발생했다. 아고라 스테이츠에 같은 질문을 남기신 분이 있길래 답변을 보니, arr과 [] 의 주소값이 다르기 때문이라는 답변이 달렸다. ===
동치연산자는 똑같이 생긴 것 처럼 보여도 객체 타입에서의 비교는 주소값의 일치여부까지 판단하기 때문에 같지 않다고 판단한다는 것이다. 나는 해당 문제를 if (arr.length === 0)
일 때 조건을 실행하는 방법으로 해결했다.
아고라 스테이츠 첫 질문!
오늘은 나도 문제를 풀다가 이해가 되지 않는 부분이 있어서 처음으로 아고라 스테이츠를 사용해 보았다..! 질문이 처음이라 오타도 나고 코드도 빼먹고 난리도 아니었지만... 그래도 불완전한 질문을 여러번 해보는게 좋은 질문을 하는 방법 중 하나라고 하셨으니깐.. 다음엔 더 잘 확인하고 잘 질문할 수 있을 것 같다.
반복문의 break / continue 차이
또 for 문에서 break/continue
에 대해 새롭게 알게 되었다. break
는 (특정 조건에 도달하면?) 반복문을 즉시 탈출하라는 명령이지만, continue
는 이 후의 코드들을 건너 뛰고 바로 다음 반복으로 넘어가라는 의미가 있었다. 앞으로는 break
/continue
를 사용해서 반복문에서 조건을 더 정교하게 짤 수 있을 것 같다~!
'TIL' 카테고리의 다른 글
[Day 14] 클로저, ES6 주요 문법 (0) | 2022.07.12 |
---|---|
[Day 13] 원시타입, 참조타입, 스코프 (0) | 2022.07.11 |
[Day 11] 배열 + 2주차 까지의 소감 (0) | 2022.07.07 |
[Day 10] 리눅스, nvm, npm, Git (0) | 2022.07.06 |
[Day 9] 계산기 구현 (0) | 2022.07.05 |