2021-01-06 TIL

어제 트위터에서 전진하는 큰 그릇이라는 분의 1달만 해보자라는 노션 템플릿을 가져와서 1월의 목표를 세웠습니다. 제 1월의 목표는 매일 블로그 글쓰기와 캐틀벨 스윙 100개 하기로 정했습니다. 글쓰기 습관을 만들기 위해 내용이 좀 부실하더라도 TIL을 꾸준하게 적으려고 합니다. 캐틀벨은 현재 8kg으로 스윙을 하고 있는데 한달 동안 지속했다면 무게를 좀 더 늘려볼 생각입니다. 일단 목표를 세웠으니 꾸준하게 밀고 나가자고 마음을 다지고 있습니다.

모던 자바스크립트 튜토리얼(https://javascript.info/) 틈틈이 읽고 있습니다. 조은님의 강의(https://blog.doitreviews.com/til/2021-01-05-til/)와 마찬가지로 알고 있는 내용도 많지만 잘 몰랐던 기초 내용이 잘 정리되어 있는 웹 사이트 입니다. 심지어 한글로 번역도 잘 되어 있습니다. 매일 꾸준히 읽고 정리하려고 계획을 세웠습니다.

이전에 작성한 아웃풋 중심 학습법(https://blog.doitreviews.com/blog/2020-12-21-short-record-output-learning-method/)을 적용해서 오늘 읽은 내용을 질문, 답변 형식으로 적어봤습니다.


Q. 자바스크립트 호스트 환경(host environment)이란 무엇인가요?

A. 자바스크립트는 여러 플랫폼에서 동작할 수 있습니다. 여기서 플랫폼은 웹브라우저일 수도 있고, 서버일 수도 있습니다. 자바스크립트 코어 외에 각 플랫폼에 특화된 기능을 호스트 환경이라고 합니다.

Q. 브라우저의 window는 무엇이고 어떤 역할을 하나요?

A. 브라우저가 자바스크립트가 동작하기 위해 제공하는 호스트 환경의 root object가 window 입니다. window는 global object로 동작합니다. global 변수나 global 함수를 선언하면 window object에 소속되어 window의 method 처럼 사용할 수 있습니다. 그리고 browser window의 정보를 가져오거나 제어할 수 있는 메서드를 제공합니다.

Q. DOM이 무엇인가요?

A. Document Object Model의 약자로 웹 페이지 내의 모든 content를 object로 표현합니다. 따라서 document를 이용하면 웹 페이지 내의 content를 생성, 수정, 삭제 할 수 있습니다.

Q. BOM은 무엇인가요?

A. Browser Object Model의 약자로 document 외에 브라우저가 제공하는 추가 object를 표현합니다. 대표적으로 navigator나 location 등이 있습니다. navigator는 브라우저와 OS에 대한 정보를 제공합니다. location은 current URL이나 URL을 변경하여 redirect 할 수 있게 해줍니다. alert, confirm, prompt 등도 BOM의 일부입니다.


2021년 1월은 나름 뿌듯한 한달이 될 것 같습니다. 느리더라도 꾸준히 진행하려고 합니다.


Written by@[Suho]
뭐든지 만들어보자.