Markup Language vs Programming Language

여태까지 배운 HTMLCSSMarkup Language에 해당합니다. 우리가 만들고 싶은 사이트를 구축하기 위해서는 정해진 양식대로만 작성하면 됐죠. 여러분들이 지금 보시는 이 문서도, Markup으로 구성되어 있습니다.

그러나, 지금부터 배워나가게 될 JavascriptProgramming Language에 해당합니다. Markup Language에서는 여러분들이 만들고 싶은 웹 사이트를 만들기 위한 방법은 한 가지 방법 밖에는 없었습니다(물론 같은 효과를 내는 방법들은 여러가지 존재하겠지만요). 그 이유는 Markup Language의 특성상, 어떠한 마크업을 하기 위한 방법을 하나 뿐이기 때문입니다. 1수준의 header를 작성하기 위해서는 **<h1>**태그를, 2수준의 header를 작성하기 위해서는 **<h2>**태그를 사용해야했습니다. 이와는 달리, Javascript에서는 똑같은 동작을 구현하기 위한 여러가지 방법들이 존재합니다. 이것이 바로 Programming Language의 특성입니다. Javascript는 여러분들이 하려는 것을 실제로 구현하게 도와주는 Programming Language입니다.

API

우리가 Javascript를 이용하여 웹 페이지 상에서 무언가를 하고자 한다면, 어떤 것을 이용하면 될까요? 웹 페이지의 요소들을 접근하기 위한 방법이 필요할 것입니다. Web Browser는 이 수단을 우리에게 API라는 형태로 제공합니다. API는 **Application Programming Interface (응용 프로그래밍 인터페이스)**라고 합니다. 인터페이스라는 용어는 상호간의 규약이라고 생각하면 됩니다. 웹 페이지의 요소들을 접근할 수 있도록 해주는 규약과 같은 것이죠.

예를 들면, 웹 브라우저에서는 id attribute를 이용해서 element를 가져올 수 있는 아래와 같은 방법을 제공합니다.

Document.getElementById() - Web API | MDN (mozilla.org)

JS 문서 불러오기

HTML 문서 내에 JS 문서를 포함시키는 방법에는 총 세 종류가 있습니다.

강의 영상

https://www.youtube.com/watch?v=Qn6ADqmyRh4