JavaScript 란?
- 객체(Object) 기반의 스크립트 언어로, 웹 브라우저 내에서 주로 사용하는 언어이다. (Node.js 같은 프레임워크를 사용하면 서버 측에서도 사용 가능)
- 스크립트 언어는 기존에 존재하는 응용 소프트웨어(애플리케이션)를 제어하는 프로그래밍 언어이다.
JavaScript 탄생 배경: 정적인 html을 동적으로 사용자와 상호작용할 수 있도록 하기 위함!
(1995년 넷스케이프사의 브랜든 아이크가 Mocha라는 명칭으로 개발하였으나, 추후 홍보 목적으로 Java의 이름을 따서 JavaScript로 명칭이 변경되었다고 한다.)
JavaScript의 특징:
- 객체 기반의 스크립트 언어
- 동적이며, 타입을 명시할 필요가 없는 인터프리터 언어 (소스코드를 바로 실행)
- 객체 지향형 프로그래밍과 함수형 프로그래밍 모두 표현 가능
JavaScript의 장점:
- 컴파일 과정이 없어 빠른 시간 안에 적용이 가능하다.
- 단순한 구조로 비교적 이해하기 쉽다.
- 웹에 특화되어 운영체제와 플랫폼에 상관없이 잘 작동된다.
- 확장성이 높다.
- 웹서버에 주는 부담이 적다.
JavaScript의 단점:
- 브라우저 상에 소스코드가 노출되어 보안적으로 취약하다.
- 사용할 수 있는 메소드가 적다.
- 일관성이 부족하다.
Java와 JavaScript: 이름을 보면 서로 관련있는 언어로 생각되나, 직접적인 관련은 없음.
Java | JavaScript |
컴파일 언어 | 인터프리터 언어 |
타입 검사가 엄격함 | 타입을 명시하지 않음 |
class 기반의 객체 지향 언어 | 프로토타입 기반의 객체 지향 언어 |
JavaScript 표준: 1996년 넷스케이프사는 자바스크립트를 국제 표준안으로 만들기 위해 ECMA(European Computer Manufacturers Association)에 제출한다. 그 결과 ECMAScript 라는 새로운 표준이 제정되고 국제 표준이 된다.
'Programming > Web' 카테고리의 다른 글
[개발일지/회고] 스파르타코딩클럽 웹개발 종합반 - 5주차 (2) | 2022.02.12 |
---|---|
[개발일지/회고] 스파르타코딩클럽 웹개발 종합반 - 4주차 (0) | 2022.01.27 |
[개발일지/회고] 스파르타코딩클럽 웹개발 종합반 - 3주차 (0) | 2022.01.20 |
[개발일지/회고] 스파르타코딩클럽 웹개발 종합반 - 2주차 (0) | 2022.01.15 |
[개발일지/회고] 스파르타코딩클럽 웹개발 종합반 - 1주차 (0) | 2022.01.08 |