Please note, this is a STATIC archive of website developer.mozilla.org from November 2016, cach3.com does not collect or store any user information, there is no "phishing" involved.

JavaScript에 대하여

JavaScript란 무엇인가?

JavaScript® (줄여서 JS)는 Netscape에서 개발된 객체 스크립트 언어로 전세계적으로, 수백만의 웹페이지와 서버 어플리케이션에서 사용되고 있다. Netscape의 JavaScript는  표준 스크립트 언어인 ECMA-262 개정 3판 (ECMAScript)의  상위세트로 공개된 규격과 거의 차이가 없다. 

일반적인 오해와는 달리 JavaScript는 "Java 해석기"가 아니다. 간단히 말하면, JavaScript는 프로토타입 기반의 객체 구문의 지원하는 동적인 스크립트 언어다. 기본적인 문법은  언어 학습에 필요한 새로운 개념을 줄이기 위해 Java와 C++의 if문, for와 while문, switch문과 try...catch 구문을 사용하는 언어구조를 사용하며, 그와 같은 (거의 가까운) 동작을 한다. 

Javascript는 절차지향 (procedural) 언어와  객체지향 (object oriented) 언어 두가지로 기능지을 수 있다. 오브젝트는 JavaScript에서, C++ 과 Java와 같은 컴파일러형 언어에 있어서 일반적인 구문 클래스정의와 반대로, 실행시에 메소드와 프로퍼티를 그 이외로부터의 오브젝트에 더하는 것으로 프로그램에 근거해서 작성된다. 한번 오브젝트가 구축되면, 같은 오브젝트를 작성하는데도 프로토타입으로서 사용할 수 있다.

JavaScript의 동적인 성질은, 실행시의 오브젝트 구축, 가변 인수 리스트, 함수 변수, (eval 에 의한)동적 스크립트 작성, (for ... in 에 의한) 오브젝트의 내부참조, 또는 소스코드 복원 (JavaScript 의 프로그램은 함수본체를 소스텍스트에 역컴파일할 수 있다.) 을 포함하고 있다.

고유 오브젝트로는 Number, String, Boolean, Date, RegExp, 그리고 Math 가 있다.

JavaScript 프로그래밍에 관한 깊은 의논에 대해서 상세한 것은, 아래 표의 언어와 Scripting resources의 링크에서 얻을 수 있다.

어떻게 구현되어 있을까 ?

mozilla.org 는 두개의 JavaScript 구현을 호스트하고 있다. 최초로써의 JavaScript는 Netscape의 Brendan Eich가 작성하고, ECMA-262 개정3판 (JavaScript 1.5 와 같음) 에 적합하게 수정되어져왔다. 이엔진은, SpiderMonkey 라고 하는 코드네임으로, C로 구현되어져있다. Rhino 엔진은, Norris Boyd ( 이 사람도 Netscape 회원) 에 이해 작성되었으며, Java에 의해 JavaScript를 구현된다. SpiderMonkey처럼, Rhino도 ECMA-262 개정 3판에 준거한다.

mozilla.org의 각 JavaScript 엔진은, 애플리케이션이 JavaScript를 지원하기 위해 부를 수 있는 공개 API를 공개하고 있다. JavaScript 를 지원하는 가장 일반적인 호스트환경은 웹브라우저이다. 웹브라우저는 주로  DOM의 JavaScript로의 구현을 담당하는 "호스트 오브젝트" 를 작성하는데 공개 API를 사용하고 있다.

JavaScript 에 있어서 또 하나의 일반적인 애플리케이션은, (웹) 서버사이드 스크립팅 언어이다. JavaScript 를 사용하는 웹 서버에서는, 실제 HTTP 요청/응답 오브젝트를 대신하는 것으로서, 호스트 오브젝트를 다른 프로그램으로부터 보이는 형태로 두게 된다. JavaScript 프로그램은, 그 오브젝트를 조작해서 동적으로 웹 페이지를 생성할 수 있다.

JavaScript 를 당신의 애플리케이션에 삽입하는 것에서부터 상세한 정보에 대해서까지는 아래의 SpiderMonkey 나 Rhino 링크를 참조하던, netscape.public.mozilla.jseng 뉴스 그룹에서 우리를 참조하길 바란다.

JavaScript 리소스

SpiderMonkey
C 엔진의 JavaScript (SpiderMonkey 라고 불리어짐) 의 삽입에 대해서의 상세정보.
 
Rhino
Java 엔진의 JavaScript (Rhino 라고 불리어짐) 의 삽입에 대해서의 상세정보
 
Language resources
공포되고 있는 JavaScript의 표준, LiveConnect의 문서, JavaScript 2.0의 작업을 설명
 
A re-introduction to JavaScript
JavaScript GuideJavaScript reference

JavaScript® is a trademark or registered trademark of Oracle in the U.S. and other countries.

문서 태그 및 공헌자

 이 페이지의 공헌자: desty, stephenjang, Luzi.kr, teoli, Zer0th, 99corps
 최종 변경: desty,