J스크립트
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.
1. 개요
J스크립트는 마이크로소프트가 자바스크립트의 상표권 문제를 피하기 위해 사용한 이름으로, 자바스크립트와 유사한 언어이다. 초기 JScript는 액티브 스크립팅 엔진으로, 인터넷 익스플로러, HTML 응용 프로그램, 클래식 ASP 등에서 사용되었다. JScript는 여러 버전의 인터넷 익스플로러 및 윈도우와 함께 제공되었으며, .NET 환경을 위한 JScript .NET과 Managed JScript 버전도 존재한다. J스크립트는 다양한 데이터 형식, 파일 입출력, 애플리케이션 제어를 지원하며, HTML 내에서 사용하거나 ActiveX를 통해 파일 생성 및 제어가 가능하다.
더글러스 크락포드는 YUI 극장에서 '자바스크립트 프로그래밍 언어'라는 강연에서 다음과 같이 설명했다.
2. 자바스크립트와의 비교
그러나 JScript는 조건부 컴파일을 지원하여 프로그래머가 블록 주석 내에서 코드를 선택적으로 실행할 수 있게 한다. 이는 다른 자바스크립트 구현에서는 지원되지 않는 ECMAScript 표준의 확장이지만, 조건부 컴파일은 더 이상 Internet Explorer 11 표준 모드에서 지원되지 않는다.
과거에 자바스크립트와 JScript 간의 다른 내부 구현 차이점은 마이크로소프트 개발자 네트워크(MSDN)에 언급되어 있다.[9] Internet Explorer에서 스크립트 요소의 기본 유형 값은 자바스크립트였으며 JScript는 그 별칭이었다.[10] JScript에서 자바스크립트로의 명백한 전환 과정에서, 온라인 상의 마이크로소프트 엣지 개발자 가이드는 Mozilla MDN 웹 레퍼런스 라이브러리를 자사의 최종 문서로 참조한다.[11] 2017년 10월 현재, Internet Explorer에서 스크립팅에 대한 마이크로소프트 MSDN 페이지도 거기로 리디렉션되고 있다.[12] 이 정보에는 Microsoft Docs의 자바스크립트 언어 참조에 나열된 Enumerator와 같은 JScript 특정 개체가 포함되지 않을 수 있다.[13] 이러한 개체는 엣지 브라우저 또는 그 이전 버전에서 지원되는지 여부와 관계없이 ECMA 표준에 포함되지 않은 추가 기능을 제공한다.[14]
JScript는 ECMAScript 및 자바스크립트와 호환된다. 이 외에 JScript에는 다음과 같은 특징이 있다.3. 버전
버전 공개일 함께 공개된 소프트웨어[29] 대응하는 JavaScript 버전1 1.0 1996년 8월 인터넷 익스플로러 3.0 1.0 2.0 1997년 1월 인터넷 정보 서버 3.0 1.1 3.0 1997년 10월 인터넷 익스플로러 4.0 1.3 4.0 1998년 9월 비주얼 스튜디오 6.0 (Visual InterDev의 일부로) 5.0 1999년 3월 인터넷 익스플로러 5.0 1.4 5.1 2000년 2월 인터넷 익스플로러 5.01 1.4 5.5 2000년 7월 인터넷 익스플로러 5.5 1.5 5.6 2001년 10월 인터넷 익스플로러 6.0 1.5 5.7 2006년 11월 인터넷 익스플로러 7.0
Windows XP SP31.5 5.8 2009년 3월 인터넷 익스플로러 8.0 1.5 후계(Chakra) 2011년 3월 인터넷 익스플로러 9.0~
주(1): JScript는 JavaScript와 마찬가지로, ECMA 표준에 정의되지 않은 많은 기능을 지원한다[30]。
JScript는 윈도우 CE에서도 동작하지만, 이 버전에는 액티브 디버깅 기능이 없다.
3. 1. JScript (COM Classic)
초기 JScript는 액티브 스크립팅 엔진으로, OLE 자동화 플랫폼을 기반으로 구축되었다. 인터넷 익스플로러에서 표시되는 웹 페이지, HTML 응용 프로그램 (IE9 이전), 클래식 ASP, 윈도우 스크립트 호스트 스크립트 및 기타 OLE 자동화 환경에서 JScript를 호스팅할 때 사용되는 버전이다. JScript는 새로운 .NET 기반 버전과 구별하기 위해 "클래식 JScript" 또는 "액티브 스크립팅 JScript"라고도 한다.
JScript는 윈도우 CE에서도 사용할 수 있지만 (윈도우 모바일에 포함, 윈도우 임베디드 CE에서 선택 사항), 윈도우 CE 버전에는 액티브 디버깅 기능이 없다.
일부 JScript 버전은 여러 버전의 인터넷 익스플로러 및 윈도우에서 사용할 수 있다. 예를 들어 JScript 5.7은 인터넷 익스플로러 7.0과 함께 도입되었으며, 윈도우 XP 서비스 팩 3이 설치된 인터넷 익스플로러 6.0에도 설치된다. JScript 5.8은 인터넷 익스플로러 8.0과 함께 도입되었으며, 윈도우 모바일 6.5의 인터넷 익스플로러 6.0과 함께 설치된다.
버전 | 날짜 | 도입 | 기반 | 유사한 JavaScript 버전 |
---|---|---|---|---|
1.0 | 1996년 8월 | 인터넷 익스플로러 3.0 | 넷스케이프 자바스크립트 | 1.0 |
2.0 | 1997년 1월 | 윈도우 IIS 3.0 | 넷스케이프 자바스크립트 | 1.1 |
3.0 | 1997년 10월 | 인터넷 익스플로러 4.0 | ECMA-262 1판 | 1.3 |
4.0 | 비주얼 스튜디오 6.0 (Visual InterDev의 일부로) | ECMA-262 1판 | 1.3 | |
5.0 | 1999년 3월 | 인터넷 익스플로러 5.0 | ECMA-262 2판 | 1.4 |
5.1 | 인터넷 익스플로러 5.01 | ECMA-262 2판 | 1.4 | |
5.5 | 2000년 7월 | 인터넷 익스플로러 5.5 & 윈도우 CE 4.2 | ECMA-262 3판 | 1.5 |
5.6 | 2001년 10월 | 인터넷 익스플로러 6.0 & 윈도우 CE 5.0 | ECMA-262 3판 | 1.5 |
5.7 | 2006년 11월 | 인터넷 익스플로러 7.0 | ECMA-262 3판[19] + ECMA-327 (ES-CP) | 1.5 |
5.8 | 2009년 3월 | 인터넷 익스플로러 8.0 & 인터넷 익스플로러 모바일 6.0 | ECMA-262 3판 + ECMA-327 (ES-CP) + JSON (RFC 4627) | 1.5 |
11.0 | 2024년 6월 | 윈도우 11 버전 24H2 | JScript 9 레거시 (JScript 5.8과 호환되는 드롭인 대체품으로 설계되었지만 100% 호환되지는 않음[20]) | 1.5 |
3. 2. JScript "Chakra" (JsRT)
Chakra (JScript 엔진)도 참고하십시오.JScript "Chakra"는 인터넷 익스플로러 9[22]의 성능 향상을 위해 재설계된 엔진으로, 적절한 액티브 스크립팅 엔진 호환성을 희생하는 대신 특정 Microsoft JavaScript Hosting(JsRT) API를 필요로 한다. JScript 5.x와 함께 사이드 바이 사이드로 설치되며, 인터넷 익스플로러 9 이상 및 JsRT 호스트에서만 사용된다. 다른 액티브 스크립팅 호스트는 JScript 엔진을 요청할 때 계속해서 5.x 버전을 사용한다.
버전 | 날짜 | 도입 | 기반 | 유사한 JavaScript 버전 |
---|---|---|---|---|
Chakra 9.0 | 2011년 3월 | Internet Explorer 9.0 | ECMA-262 5판 | 1.8.1 |
Chakra 10.0 | 2012년 9월 | Internet Explorer 10.0 | ECMA-262 5.1판 | |
Chakra 11.0 | 2013년 10월 | Internet Explorer 11.0 | ECMA-262 6판 | |
Chakra Edge | 2015년 7월 | Edge / Windows 10 | ECMA-262 5.1~9(2018)판 |
Chakra JsRT 엔진에는 두 가지 버전이 있다. 원래 버전은 Internet Explorer 9 이상에서 사용되었으며, "jscript9.dll" 또는 "레거시 Chakra 엔진"이라고도 불린다. 두 번째 버전은 Microsoft Edge 레거시 브라우저에서 사용되며, "새 Chakra 엔진", "Edge 엔진" 또는 "Chakra.dll"이라고도 불린다. 두 Chakra JsRT 버전 모두 JsRT API를 사용하여 다른 응용 프로그램에서 사용할 수 있으며, 사이드 바이 사이드로 설치할 수 있다.[25]
3. 3. JScript .NET (CLI)
JScript .NET은 마이크로소프트 .NET의 JScript 구현체이다. CLI 언어이므로 매우 강력한 기능을 상속받지만, 원래 JScript 언어의 많은 기능을 갖고 있지 않아, 많은 스크립팅 시나리오에는 적합하지 않다.JScript .NET은 ASP.NET 페이지 및 완전한 .NET 응용 프로그램에 사용할 수 있지만, 마이크로소프트 비주얼 스튜디오에서 이 언어를 지원하지 않기 때문에 새로운 최고 수준의 언어보다는 기존 JScript를 사용하는 ASP의 업그레이드 경로에 더 가깝다.
버전 | 플랫폼 | 날짜 | 도입 | 기반 |
---|---|---|---|---|
7.0 | 데스크톱 CLR 1.0 | 2002-01-05 | 마이크로소프트 .NET 프레임워크 1.0 | ECMA-262 3rd edition |
7.1 | 데스크톱 CLR 1.1 | 2003-04-01 | 마이크로소프트 .NET 프레임워크 1.1 | ECMA-262 3rd edition |
8.0 | 데스크톱 CLR 2.0 | 2005-11-07 | 마이크로소프트 .NET 프레임워크 2.0 | ECMA-262 3rd edition |
10.0 | 데스크톱 CLR 4.0 | 2010-08-03 | 마이크로소프트 .NET 프레임워크 4.0 | ECMA-262 3rd edition |
JScript .NET은 .NET 컴팩트 프레임워크에서 지원되지 않는다.
참고: JScript .NET 버전은 기존 JScript 버전과 관련이 없다. JScript .NET은 별도의 제품이다. JScript .NET은 비주얼 스튜디오 IDE 내에서 지원되지 않지만, 해당 버전은 다른 .NET 언어 버전(C#, VB.NET, VC++)과 동기화되며, 해당 비주얼 스튜디오 버전을 따른다.
.NET 프레임워크 3.0 및 3.5는 2.0을 기반으로 구축되었으며, 새로운 JScript.NET 릴리스를 포함하지 않는다.
3. 4. Managed JScript
다이내믹 랭귀지 런타임(DLR)을 위한 JScript 구현체이며, 아이언루비, 아이언파이썬, 다이내믹 Visual Basic과 함께 .NET용 마이크로소프트의 동적 언어에 속한다.CLS 호환성을 제공하는 JScript .NET과 달리, Managed JScript는 DLR 위에 설계되었으며 스크립팅 시나리오에 필요한 기능을 제공한다.
주로 실버라이트와 ASP.NET 내에서 사용하도록 설계되었지만, 모든 .NET 응용 프로그램 내에 쉽게 포함될 수 있다.[21]
Managed JScript에는 데스크톱 CLR용과 실버라이트 CoreCLR용의 두 가지 빌드가 있다.
버전 | 날짜 | 도입 | 기반 | 플랫폼 |
---|---|---|---|---|
1.0.0.0 | 2007 | ASP.NET Futures (2007년 7월 미리보기) | ECMA-262 3rd edition | 데스크톱 CLR 2.0 |
1.1.20625.0 | 2007 | 마이크로소프트 실버라이트 1.1 Alpha (2007년 9월 업데이트) | ECMA-262 3rd edition | CoreCLR 1.1 |
Managed JScript는 .NET 컴팩트 프레임워크에서 지원되지 않는다.
4. 주요 특징
5. 코드 예시
javascript
// 파일 조작을 위한 객체를 생성한다.
var fso = new ActiveXObject("Scripting.FileSystemObject");
// C:\jscript_test 폴더가 없으면 생성한다.
if(! fso.FolderExists("C:\\jscript_test")) {
fso.CreateFolder("C:\\jscript_test");
}
// .txt 파일 외 다른 파일도 생성 가능하다는 예시로, output.html 파일을 생성한다.
var fil = fso.CreateTextFile("c:\\jscript_test\\output.html");
// 생성한 파일에 HTML 코드를 작성한다.
fil.WriteLine("
// 파일을 닫는다.
fil.close();
// 완료 다이얼로그를 표시한다.
WScript.Echo("C:\\jscript_test\\output.html 에 파일이 생성되었습니다.");
5. 1. HTML 내 사용 예시
HTML에 포함시키는 경우, 다음과 같이 표기한다.```html
・・・
```
또한, ActiveX를 포함한 다음과 같은 코드로 파일을 생성할 수 있다.
```javascript
// 파일 조작을 위한 객체를 생성한다.
var fso = new ActiveXObject("Scripting.FileSystemObject");
// 만약 C:\jscript_test 라는 폴더가 없다면
if(! fso.FolderExists("C:\\jscript_test")) {
// C:\jscript_test 를 만든다.
var fol = fso.CreateFolder("C:\\jscript_test");
}
// .txt 파일 외에도 만들 수 있다는 예시.
var fil = fso.CreateTextFile("c:\\jscript_test\\output.html");
// 생성한 파일에 1행을 쓴다.
fil.WriteLine("
// 파일을 닫는다.
fil.close();
// 완료 다이얼로그를 표시한다.
WScript.Echo("C:\\jscript_test\\output.html 에 파일이 생성되었습니다.");
5. 2. ActiveX를 사용한 파일 생성 예시
javascript// 파일 조작을 위한 객체를 생성한다.
var fso = new ActiveXObject("Scripting.FileSystemObject");
// C:\jscript_test 폴더가 없으면 생성한다.
if(! fso.FolderExists("C:\\jscript_test")) {
fso.CreateFolder("C:\\jscript_test");
}
// .txt 파일 외 다른 파일도 생성 가능하다는 예시로, output.html 파일을 생성한다.
var fil = fso.CreateTextFile("c:\\jscript_test\\output.html");
// 생성한 파일에 HTML 코드를 작성한다.
fil.WriteLine("
// 파일을 닫는다.
fil.close();
// 완료 다이얼로그를 표시한다.
WScript.Echo("C:\\jscript_test\\output.html 에 파일이 생성되었습니다.");
참조
[1]
웹사이트
Types of Script Files
https://msdn.microso[...]
Msdn.microsoft.com
2011-10-24
[2]
웹사이트
Disabling legacy scripting engine JScript in Internet Explorer
https://techcommunit[...]
2020-10-13
[3]
웹사이트
JScript (ECMAScript3)
https://msdn.microso[...]
Msdn.microsoft.com
2011-10-24
[4]
웹사이트
What Is WSH?
https://msdn.microso[...]
Msdn.microsoft.com
2011-10-24
[5]
웹사이트
What is JScript 10.0?
https://msdn.microso[...]
[6]
웹사이트
Microsoft adds option to disable JScript in Internet Explorer
https://www.zdnet.co[...]
[7]
웹사이트
Option to disable JScript execution in Internet Explorer
https://support.micr[...]
[8]
서적
The JavaScript Programming Language
[9]
웹사이트
The World of JScript, JavaScript, ECMAScript
https://blogs.msdn.m[...]
Blogs.msdn.microsoft.com
2007-08-15
[10]
웹사이트
script element
https://msdn.microso[...]
Msdn.microsoft.com
[11]
웹사이트
Microsoft-Edge Dev-Guide
https://docs.microso[...]
Docs.microsoft.com
[12]
웹사이트
Documenting the Web Together
https://blogs.window[...]
Blogs.windows.com
2017-10-18
[13]
웹사이트
Javascript Language Reference (Microsoft Docs)
https://docs.microso[...]
Docs.microsoft.com
[14]
웹사이트
JavaScript Objects (Microsoft Docs)
https://docs.microso[...]
Docs.microsoft.com
[15]
웹사이트
What's New in ASP.NET 4.5 and Visual Web Developer 11 Beta: The Official Microsoft ASP.NET Site
http://www.asp.net/v[...]
2022-05-13
[16]
citation
Version Information (Windows Scripting – JScript)
https://msdn.microso[...]
Microsoft
[17]
citation
Microsoft JScript Features – Non-ECMA (Windows Scripting – JScript)
https://msdn.microso[...]
Microsoft
[18]
citation
Microsoft Embraces ECMA Internet Scripting Standard; Delivers Industry's First ECMA-Compliant Scripting Language, JScript 3.0, In Key Microsoft Products
http://www.microsoft[...]
Microsoft
1997-06-30
[19]
웹사이트
JScript Deviations from ES3
http://regmedia.co.u[...]
Situation Publishing / Microsoft
[20]
웹사이트
Windows 11 22H2 has a different way of using the JS engine? - Microsoft Q&A
https://learn.micros[...]
[21]
문서
"(Source: [http://blogs.msdn.com/jscript/archive/2007/05/04/managed-jscript-announced.aspx JScript Blog], [http://blogs.msdn.com/hugunin/archive/2007/04/30/a-dynamic-language-runtime-dlr.aspx Jim Hugunin's Thinking Dynamic blog],\nSource: [http://blogs.msdn.com/jitu/archive/2007/05/04/introducing-managed-jscript.aspx Blog of Jitu])"
[22]
웹사이트
The New JavaScript Engine in Internet Explorer 9
https://docs.microso[...]
Microsoft
2010-03-18
[23]
citation
Version Information (Windows Scripting – JScript)
https://msdn.microso[...]
Microsoft
[24]
웹사이트
Internet Explorer Standards Support Documents
https://docs.microso[...]
Microsoft
[25]
웹사이트
Targeting Microsoft Edge vs. Legacy Engines in JsRT APIs
https://docs.microso[...]
Microsoft
[26]
웹사이트
Windows 11 22H2 has a different way of using the JS engine? - Microsoft Q&A
https://learn.micros[...]
[27]
citation
What Is JScript .NET?
https://msdn.microso[...]
Microsoft
[28]
웹사이트
Types of Script Files
https://msdn.microso[...]
Msdn.microsoft.com
null
[29]
웹사이트
Version Information (JScript 5.6)
http://msdn2.microso[...]
[30]
웹사이트
Microsoft JScript Features - Non-ECMA (JScript 5.6)
http://msdn2.microso[...]
[31]
웹사이트
クラス ベースのオブジェクト
http://msdn.microsof[...]
[32]
웹인용
Types of Script Files
https://msdn.microso[...]
Msdn.microsoft.com
null
본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.
문의하기 : help@durumis.com