웹사이트를 공부하다 보면 “웹브라우저는 JavaScript만 실행할 수 있다”는 말을 자주 듣게 된다. 그래서 많은 초보자가 “왜 하필 JavaScript만 실행할까?”, “파이썬이나 다른 언어는 안 되나?”라는 궁금증을 갖게 된다.
나도 처음에는 JavaScript가 특별히 더 좋은 언어라서 웹브라우저에서만 사용하는 줄 알았다. 하지만 직접 HTML 파일 안에 JavaScript를 넣어보고, 반대로 파이썬 코드를 넣어보면서 이유를 알게 됐다.
결론부터 말하면, 웹브라우저는 처음 만들어질 때부터 JavaScript를 실행하도록 설계되었기 때문이다.
즉, JavaScript가 더 쉬워서도 아니고, 더 강력해서도 아니다. 그냥 웹브라우저가 JavaScript를 이해하도록 만들어졌기 때문에 JavaScript를 사용하는 것이다.

웹브라우저는 원래 HTML만 보여주는 프로그램이었다
인터넷이 처음 생겼을 때 웹사이트는 지금처럼 움직이지 않았다. 그냥 글자와 사진만 보여주는 아주 단순한 페이지였다.
즉, 초창기 웹브라우저는 HTML만 읽어서 화면에 보여주는 프로그램이었다.
예를 들어 아래처럼:
<h1>안녕하세요</h1>
<p>이것은 웹사이트입니다.</p>
이런 코드를 읽고 화면에 보여주는 것이 전부였다.
하지만 시간이 지나면서 사람들은 웹사이트에서도:
- 버튼 클릭
- 슬라이드 배너
- 로그인
- 메뉴 열기
같은 기능을 원하게 됐다.
그래서 웹브라우저 안에서 움직이는 기능을 만들 수 있는 언어가 필요해졌고, 그때 만들어진 것이 JavaScript다.
JavaScript는 웹브라우저를 위해 만들어진 언어다
JavaScript는 원래부터 웹브라우저 안에서 실행하기 위해 만들어졌다.
1995년, 당시 넷스케이프라는 브라우저 회사는 웹사이트를 더 재미있고 움직이게 만들고 싶어했다. 그래서 브라우저 안에서 바로 실행할 수 있는 새로운 언어를 만들었고, 그것이 JavaScript가 됐다.
즉, JavaScript는 처음부터 “웹브라우저 전용 언어”에 가깝게 시작했다.
그래서 지금도 크롬, 엣지, 사파리, 파이어폭스 같은 대부분의 웹브라우저는 JavaScript를 기본으로 지원한다.
예를 들어 HTML 파일 안에 아래처럼 쓰면:
<script>
alert("안녕하세요");
</script>
브라우저는 바로 이 코드를 읽고 실행해서 알림창을 띄운다.
왜냐하면 브라우저 안에는 JavaScript를 실행하는 기능이 이미 들어 있기 때문이다.
그렇다면 파이썬은 왜 실행되지 않을까
파이썬도 쉽고 유명한 언어인데, 브라우저에서는 기본적으로 실행되지 않는다.
예를 들어 HTML 안에 아래처럼 쓰면:
<script>
print("안녕하세요")
</script>
브라우저는 아무것도 하지 못한다.
왜냐하면 브라우저는 print나 파이썬 문법을 이해하지 못하기 때문이다.
쉽게 말하면, 웹브라우저는 영어만 알아듣는 사람과 비슷하다. 파이썬은 한국어처럼 쉬울 수 있지만, 상대방이 영어만 알아듣는다면 결국 영어로 말해야 한다.
웹브라우저에게 그 “영어”가 바로 JavaScript다.
즉, JavaScript가 특별히 더 좋은 언어라기보다, 브라우저가 원래 JavaScript만 이해하도록 만들어졌기 때문에 사용하는 것이다.
브라우저 안에는 JavaScript 엔진이 들어 있다
웹브라우저 안에는 JavaScript를 실행해주는 특별한 기능이 들어 있다. 이것을 JavaScript 엔진이라고 부른다.
예를 들어:
- 크롬 → V8 엔진
- 파이어폭스 → SpiderMonkey
- 사파리 → JavaScriptCore
이 엔진이 JavaScript 코드를 읽고, 실제로 움직이게 만든다.
예를 들어 사용자가 버튼을 누르면:
- 브라우저가 JavaScript 코드를 읽는다.
- JavaScript 엔진이 실행한다.
- 화면이 바뀌거나 글자가 바뀐다.
즉, 브라우저 안에는 JavaScript를 실행할 준비가 이미 되어 있다.
하지만 파이썬이나 Java는 이런 엔진이 기본으로 들어 있지 않다. 그래서 브라우저는 그 언어들을 바로 실행할 수 없다.
그런데 요즘은 JavaScript가 브라우저 밖에서도 실행된다
원래 JavaScript는 웹브라우저 안에서만 실행되던 언어였다. 하지만 지금은 Node.js라는 도구 덕분에, 브라우저 밖에서도 JavaScript를 사용할 수 있다.
예를 들어 예전에는:
- 웹사이트 화면 → JavaScript
- 서버 → Python, Java, PHP
이렇게 나누어져 있었다.
하지만 Node.js가 나오면서 JavaScript로 서버도 만들 수 있게 됐다.
즉, 지금은 JavaScript를:
- 웹브라우저
- 서버
- 앱 개발
까지 다양하게 사용할 수 있다.
그래서 JavaScript는 점점 더 많이 사용되는 언어가 되었다.
나도 처음에는 JavaScript가 웹사이트에서만 쓰이는 줄 알았다. 그런데 Node.js로 서버를 만들 수 있다는 것을 보고 꽤 신기했다. 그래서 “JavaScript는 원래 브라우저용이었지만, 지금은 더 넓게 쓰이는구나”라는 것을 알게 됐다.
그럼 정말 다른 언어는 브라우저에서 못 쓸까
완전히 못 쓰는 것은 아니다. 요즘은 특별한 도구를 사용하면 파이썬이나 C++, Java 같은 언어도 브라우저에서 실행할 수 있다.
예를 들어:
- PyScript → 브라우저에서 Python 실행
- WebAssembly → C++, Rust 등을 브라우저에서 실행
하지만 이런 방법도 결국은 브라우저가 이해할 수 있는 형태로 바꿔서 실행하는 것이다.
즉, 직접 실행하는 것이 아니라, JavaScript나 브라우저가 이해할 수 있는 방식으로 변환하는 것이다.
그래서 여전히 웹사이트를 만들 때 가장 기본이 되는 언어는 JavaScript다.
왜 웹사이트를 만들 때 JavaScript가 꼭 필요할까
웹사이트는 단순히 글만 보여주는 것이 아니라, 사용자가 클릭하고, 입력하고, 바로 반응해야 한다.
예를 들어:
- 버튼을 누르면 메뉴 열기
- 로그인 성공하면 화면 바꾸기
- 새로고침 없이 댓글 불러오기
- 좋아요 버튼 색 바꾸기
이런 기능은 모두 JavaScript가 담당한다.
즉, JavaScript는 웹사이트를 “움직이게” 해주는 언어다.
그래서 HTML과 CSS만으로는 정적인 화면만 만들 수 있고, 실제로 기능이 있는 웹사이트를 만들려면 JavaScript가 필요하다.
JavaScript는 왜 웹브라우저에서만 실행될까를 가장 쉽게 정리하면
| 질문 | 답 |
|---|---|
| 왜 JavaScript만 실행될까? | 브라우저가 원래 JavaScript를 이해하도록 만들어졌기 때문 |
| 파이썬은 왜 안 될까? | 브라우저 안에 Python 엔진이 없기 때문 |
| JavaScript는 원래 어디용인가? | 웹브라우저용 |
| 지금은 어디서 쓰이나? | 브라우저, 서버, 앱 개발 |
처음에는 “왜 굳이 JavaScript를 써야 하지?”라는 생각이 들 수 있다. 하지만 결국 이유는 아주 단순하다.
웹브라우저가 JavaScript를 이해하기 때문이다.
그래서 웹사이트를 만들고 싶다면, JavaScript는 결국 꼭 배우게 되는 언어다.