자바스크립트: 두 판 사이의 차이

내용 삭제됨 내용 추가됨
편집 요약 없음
Kjh9348 (토론 | 기여)
잔글편집 요약 없음
17번째 줄:
}}
 
'''자바스크립트'''({{llang|en|JavaScript}})는 [[프로토타입 기반 프로그래밍|객체 기반]]의 [[스크립트 언어|스크립트 프로그래밍 언어]]이다. 이 언어는 [[웹브라우저웹 브라우저]] 내에서 주로 사용하며, 다른 응용 프로그램의 내장 객체에도 접근할 수 있는 기능을 가지고 있다. 또한 [[Node.js]]와 같은 런타임 환경과 같이 서버 사이드 네트워크 프로그래밍에도 사용되고 있다. 자바스크립트는 본래 [[넷스케이프 커뮤니케이션즈 코퍼레이션]]의 [[브렌던 아이크]](Brendan Eich)가 처음에는 ''모카''(Mocha)라는 이름으로, 나중에는 ''라이브스크립트''(LiveScript)라는 이름으로 개발하였으며, 최종적으로 자바스크립트가 되었다. 자바스크립트가 [[썬 마이크로시스템즈]]의 [[자바 (프로그래밍 언어)|자바]]와 [[구문 (프로그래밍 언어)|구문]](syntax)이 유사한 점도 있지만, 이는 사실 두 언어 모두 C 언어의 기본 구문을구문에 바탕을 바탕했기뒀기 때문이고, 자바와 자바스크립트는 직접적인 관련성이 없다. 이름과 구문 외에는 자바보다 [[셀프 프로그래밍 언어|셀프]]와 유사성이 많다.
 
2013년 1월 기준으로, 가장 최근 버전은 자바스크립트 1.8.5이고<ref>[https://developer.mozilla.org/en/JavaScript/New_in_JavaScript/1.8.5 New in JavaScript 1.8.5 | Mozilla Developer Network]</ref>, [[모질라 파이어폭스|파이어폭스]] 3에서 지원된다. 표준 ECMA-262 3판에 대응하는 자바스크립트 버전은 1.5이다. [[ECMA스크립트]]는 쉽게 말해 자바스크립트의 표준화된 버전이다. [[모질라 애플리케이션 스위트|모질라]] 1.8 베타 1이 나오면서 [[XML]]에 대응하는 확장 언어인 [[E4X]](ECMA-357)를 부분 지원하게 되었다. 자바스크립트는 브라우저마다 지원되는 버전이 다르며, {{출처|날짜=2013-1-19|가장 범용적으로 지원되는 버전은 1.5이다.}}
 
== 자바와 자바스크립트, 그리고 J스크립트 ==
라이브스크립트의 이름이 자바스크립트로 변경된 것은 대략 넷스케이프가 자사의 [[넷스케이프 내비게이터|넷스케이프 네비게이터]] [[웹 브라우저]]에 자바 기술에 대한 지원을 포함하기 시작할 즈음이다. 자바스크립트는 1995년 12월 출시된 넷스케이프 2.0B3에서부터 공개, 채택되었다. 자바스크립트라는 이름은 상당한 혼란을 가져왔다. 이것은 자바와 자바스크립트 간에는 구문이 유사하다는 점(양쪽 모두 [[C (프로그래밍 언어)|C]]에 바탕을 두었기 때문에) 외에는 실제 관련성이 없었기 때문이다. 두 언어는 의미론적으로 매우 다르고, 특히 각각의 객체 모델은 관련성이 없는데다가없는 데다가 상당 부분이 호환되지 않는다.
 
웹 페이지 향상 언어로서 자바스크립트의 성공에 자극 받은자극받은 [[마이크로소프트]]는 [[J스크립트]]로 알려진 호환 언어를 개발하게 되었다. J스크립트는 1996년 8월에 출시된 [[인터넷 익스플로러]] 브라우저 3.0부터 지원 되기 시작했다. IE 브라우저에서의 자바스크립트 사용은 실제로는 J스크립트의 사용을 의미하는 것이었다. 이에 대한 표준화 요구는 [[ECMA스크립트]]에 대한 ECMA-262 표준의 기반이 되었으며, [[1996년]] 11월 이후 세 번째 판까지 출판됐다. 자바스크립트와 함께 자주 쓰이는 용어인 [[문서 객체 모델|DOM]]은 사실 ECMA스크립트 표준의 일부가 아니며, 그것은 자체로 하나의 표준이고 [[XML]]에 기반한다기반을 둔다.
 
== 상표 ==
"자바스크립트"(JavaScript)는 이제는이제 [[오라클 (기업)|오라클]]의 [[상표]]이다.<ref>{{웹 인용 | 제목=USPTO Copyright entry #75026640|url=http://tarr.uspto.gov/servlet/tarr?regser=serial&entry=75026640|publisher=USPTO}}</ref><ref>https://gamecodingschool.org/2015/06/28/%EC%9E%90%EB%B0%94%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8-%ED%91%9C%EC%A4%80%EC%9D%80-%EC%96%B4%EB%96%BB%EA%B2%8C-%EB%A7%8C%EB%93%A4%EC%96%B4%EC%A7%80%EB%8A%94%EA%B0%80/</ref> 넷스케이프 커뮤니케이션스가 발명, 구현한 기술 및 [[모질라 재단]]과 같은 독립 기관의 라이선스 하에 사용된다.<ref>{{웹 인용 | 제목=Sun Trademarks|url=http://www.sun.com/suntrademarks/|publisher=Sun Microsystems|accessdate=2007-11-08|archiveurl=https://web.archive.org/web/20100528154600/http://www.sun.com/suntrademarks/|archivedate=28 May 2010}}</ref>
 
== 헬로 월드 프로그램 ==
55번째 줄:
 
==HTML 과 자바스크립트==
[[HTML]]은 < > 태그 로태그로 [[HTML 요소|엘리먼트(element)]]를 정의한다면, 이러한 HTML의 <<font color=red>body</font>> Hello, World! </body> 엘리먼트 에엘리먼트에 일대일 대응하는 자바스크립트([[ECMA스크립트]])는
: document.<font color=red>body</font>.innerText = "Hello, World!";
처럼 정의된다.
여기서처럼 HTML과 자바스크립트 간에는 광범위한 호환성을 보장하는 동전의 양면성같은양면성 같은 구조를 엿볼 수 있는데, 이것이 가능한 것은 [[DOM]] 때문이라고 말할 수 있다.<ref>https://developer.mozilla.org/ko/docs/Gecko_DOM_Reference/%EC%86%8C%EA%B0%9C</ref>
 
== 버전 역사 ==