JavaScript란?
자바스크립트를 한마디로 요약하자면 웹을 풍부하게 만들어 주는 작고 가벼운 언어라고 합니다. 미국의 넷스케이프 커뮤니케이션즈사 (Netscape Communications)가 개발한 스크립트 언어이고, 웹 브라우저에서 실행하는 스크립트 언어를 말합니다. 작고도 빠르기 때문에 웹문서를 동적으로 꾸밀 때 가장 많이 사용됩니다.
언어 규격은 자바의 부분 집합으로 되어 있고, 하이퍼텍스트 생성 언어(HTML) 문서를 작성하는 수준의 사용자가 사용하는 것을 주안점으로 하여 자바의 언어 규격으로부터 변수의 형(정수형이나 문자열형 등등)을 생략하거나 새로운 클래스 정의를 할 수 없도록 합니다. 스크립트는 HTML 문서 속에 직접 기술하며, <script></script>라고 하는 폼을 사용합니다. 프로그래밍 입문자들은 자바스크립트와 자바가 서로 비슷하다고 생각을 많이 하는데, 두 언어 모두 자바라는 언어를 기반으로 사용하고 있기 때문입니다.
하지만 자바스크립트와 자바는 기능과 사용법까지 완전히 다른 언어입니다.
왜 자바스크립트인가?
처음 자바스크립트가 만들어 졌을때, 'LiveScript'라는 이름으로 불렸는데, 당시 자바의 인기가 아주 높은 상황이 었다고 합니다. 관련인들은 자바스크립트를 자바의 '동생' 격인 언어로 홍보를 하면 좋겠다고 의사결정을 내리고 이름을 자바스크립트라고 바꿨다고 합니다.
이름은 자바에서 차용해서 왔지만, 자바스크립트는 자바와는 독자적인 언어로, 꾸준히 발전을 거듭하면서 ECMAScript라는 고유한 명세를 갖춘 독립적인 언어가 되었습니다.
자바스크립트의 역할
자바스크립트의 일반적인 용도는 웹페이지에 기능을 더해 HTML 웹페이지를 동적으로 움직이게 만드는 것입니다. 쉽게 말해서, HTML은 겉으로 보이는 화면, 자바스크립트는 겉으로 보이지 않는 화면 안의 기능을 말합니다.
자바스크립트가 할 수 있는 기능
- HTML 페이지 변경 및 HTML 엘리먼트와 컨텐츠의 추가나 제거를 해줍니다.
- CSS 및 HTML 엘리먼트의 스타일을 변경해 줍니다.
- 사용자와의 상호작용, 폼의 유효성을 검증해 줍니다.
- 마우스와 키보드 이벤트에 대한 스크립트 실행을 해줍니다.
- 웹 브라우저 제어와 쿠키 등의 설정과 조회를 해줍니다.
- AJAX 기술을 이용하여 웹 서버와의 통신을 해줍니다.
- 동적인 효과 이미지 롤오버 상태 표시줄에 문자열 표시 등등을 해줍니다.
- 웹사이트의 기능적인 면과 쿠키 처리, 새로운 WindoW 열기 등
자바스크립트의 특징
- JavaScript는 인터프리터 언어로서 클라이언트의 웹 브라우저에 의해 해석되고 실행이 됩니다.
- JavaScript는 객체 기반의 언어이지만, 상속과 클래스라는 개념은 없습니다.
- JavaScript는 HTML문서 내에 기술되어 HTML 문서와 함께 수행이 됩니다.
- JavaScript는 HTML에 연산 제어 등으로 프로그래밍적인 요소를 추가하고, 클라이언트의 자원을 활용할 수 있게 해 줍니다.
자바스크립트의 장단점
장점
자바스크립트는 컴파일 과정이 없기 때문에 다른 언어와 비교했을 때, 빠른 시간에 스크립트를 작성할 수 있게 해 줍니다. 기존 C언어나 자바 언어와 달리 굉장히 단순한 구조와 원칙을 가지고 있기 때문에, 초보 개발자들이 쉽게 배우고 이해할 수 있게 해줍니다. 예를 들어 자바스크립트 안에서는 변수, 클래스 및 메서드를 선언하지 않고도, 메서드가 public, private 또는 protected인지 구분하지 않아도 됩니다. 자바스크립트는 웹에 특화된 기술이기 때문에 운영체제나 플랫폼에 상관없이 작동되고 확장성이 높습니다.
단점
단점은 성능이나 보안 측면에서, 내부에서 제공되는 기능이 제한적이고, 관련된 개발 도구도 많지 않은 편입니다. 또한 자바스크립트는 HTML 소스코드에 함께 작성되면서 소스코드가 외부로 공개되어 보안의 취약점이 발생하게 됩니다.
'컴퓨터 언어 기초 > JavaScript' 카테고리의 다른 글
자바스크립트에서 br태그 vs \n 차이점 (0) | 2021.04.03 |
---|