본문으로 바로가기

자바스크립트란?

자바스크립트는 오래전에 등장한 프로그래밍 언어로써 객체 기반 스크립트 랭귀지입니다.

 

웹브라우저내에서 동작을 하게 되는데 요즘은 node.js의 활용도도 많이 높아져서 서버사이드에서도 사용을 하곤 하는 언어입니다.

 

html만으로 이루어진 정적인 페이지를 이용자와 상호 작용을 할 수 있게 하거나 좀 더 화려하게 꾸며주거나 애니메이션을 표현을 할 수 있습니다.

 

흔히 혼동하는 자바와는 완전 다른 언어입니다. 자바스크립트를 만들었을 때 본래의 이름은 1995년 LiveScript 였으나 나왔을 당시에 자바의 인기가 높아서 비슷한 이름으로 채용을 하게 되었습니다.

 

이름만 비슷할 뿐 전혀 다른 형태의 언어이며 관련도 없습니다.

자바스크립트에서는 html/css로 할 수 없는 변수에 값을 저장하고 연산을 할 수 있으며 ajax등의 비동기화를 활용해서 화면의 일부만을 변경을 전체 갱신 없이 할 수 있습니다.

 

넷스케이프 2.0에 처음으로 나오게 되었습니다. 자바스크립트는 넷스케이프의 브렌던 아이크가 개발을 하였고 ecma스트립트 표준을 잘 따르고 있는 언어입니다.

이 언어의 등장으로 정적이던 화면이 동적으로 움직이며 데이터를 서버와 연동을 하며 풀리플레쉬를 하지 않아도 화면을 변경시킬 수 있습니다.

 

근래에 들어서는 자바스크립가 하나도 없는 웹페이지는 찾아보기가 힘들고 거의 없다고 봐도 과언이 아닙니다.

 

자바스크립트는 html문서 내부에서는 <script></script> 내부에서 작동을 합니다. 별도로 .js 확장자의 파일을 만들어서 거기에 프로그래밍 코드를 작성 후에 include 시켜서 사용할 수 있습니다.

 

javascript로 각 dom 엘리먼트를 컨트롤 할 수가 있는데 특정 엘리먼트의 값을 바꾼다거나 자식으로 추가를 한다거나 하는 일들을 처리 할 수 있습니다.

 

많이 쓸만해 지기는 했지만 아직까지도 디버깅 기능이 부족하고 

동적 컴퓨터 언어로써 사용자의 브라우저 즉 클라이언트에서 처리가 되는게 일반적입니다.전체적인 페이지 소스를 서버에 보내서 처리하는 방식이 아니라 데이터만 보내서 처리하고 교체를 할 수 있으므로 불필요한 트래픽을 줄일 수 있고 앞서 말한것처럼 사용자간 상호작용을 할 수 있습니다.

 

근래에 들어서는 이러한 자바스크립트를 활용하여 매우 다양한 라이브러리들이 나와 있는데요. 이런 라이브러리들이 적용이 되지 않는 것을 바닐라 자바스크립트 Vanilla JS라고도 합니다.

 

그리고 어느 순간 등장한 타입스크립트 typescript는 한동안 점유율이 낮다가 시간이 갈수록 점점 사용빈도가 높아지고 있는데 자바스크립트의 슈퍼셋인 오픈소스 언어로써 마이크로소포트에서 개발을 하였습니다.

 

느슨하고 어떻게 보면 너무나 유연한 자바스크립트와는 달리 엄격한 문법을 지원을 하고 있습니다.

 

요즘은 개발 언어 프로그래밍 붐이 많이 일고 있습니다.

 

프론트엔드 백엔드 등의 다양한 용어가 나온지도 꽤 오랜시간이 지났습니다. 웹으로 개발을 할려면 거의 필수로 이용하게 되는 부분이 자바스크립트입니다.

 

기초적인 문법부터 이를 활용해서 잘 만들어진 라이브러리등을 통해서 좀 더 멋진 프로젝트에 적용을 시킬 수가 있습니다.

이와 더불어 자바스크립트에 타입스크립트의 문법을 추가를 해서 나온 언어의 점유율도 높아지고 있는데 확장자를 .ts를 사용을 하고 있습니다.

 

즉 기존 자바스크립트의 단점이나 문제점을 개선해서 탄생이 된 언어입니다.