JScript란 무엇입니까?
JScript는 Microsoft에서 개발하고 ECMAScript 사양을 기반으로 구현된 활성 스크립팅 언어입니다. Internet Explorer의 JavaScript는 실제로 JScript를 나타냅니다. JScript는 WSH(Windows 스크립트 호스트)에서 지원됩니다(WSH의 JavaScript 셸 스크립팅: C:> cscript jslint.js). 최신 버전의 JScript(JScript.NET)는 ECMAScript 4.0을 기반으로 하며 .Net 환경에서 컴파일이 가능합니다.
.NET Framwork에는 JScript 파일을 .exe 또는 .dll 파일로 컴파일할 수 있는 JScript 컴파일러인 JScriptCompiler(C:WINDOWSMicrosoft.NETFrameworkv2.0.50727jsc.exe)가 포함되어 있습니다.
사용의 편의를 위해 JScriptCompiler의 경로를 환경 변수(환경 변수 –> 시스템 변수 –> Path)에 추가할 수 있습니다. CMD 프로그램 실행창에서 "jsc" 명령어를 직접 호출하면 컴파일러 관련 도움말 옵션을 확인할 수 있습니다.
jsc [옵션] <소스 파일> [[ 옵션] <소스 파일>…]
JScript 컴파일러 옵션
– 출력 파일 -
/out:
>/ t[arget]:exe 콘솔 애플리케이션 생성(기본값)
/t[arget]:winexe Windows 애플리케이션 생성
/t[arget]:library 라이브러리 어셈블리 생성
/platform:< ; 플랫폼> 이 코드가 실행될 수 있는 플랫폼은 x86, Itanium, x64 또는 anycpu여야 합니다. 기본값은 anycpu
– 입력 파일 -
/autoref[ |-] 가져온 네임스페이스 및 정규화된 이름을 기반으로 어셈블리를 자동으로 참조합니다(기본적으로
설정됨)
/ lib:/r[eference]:에서 참조를 검색할 추가 디렉터리를 지정합니다. 지정된 어셈블리 파일의 참조 메타데이터: <어셈블리 이름>... ]
– 리소스 -
/win32res: Win32 리소스 파일(.res) 지정
/res[ource]: 지정된 리소스 삽입 ;filename>[,[,public|private]]
/linkres[ource]: 지정된 리소스를 이 어셈블리에 연결합니다.: [, [,public|private]]
– 코드 생성 -
/debug[ |-] 디버깅 정보 내보내기
/fast[ |- ] 코드 생성을 개선하기 위해 언어 기능 비활성화
/ warningaserror[ |-] 경고를 오류로 처리
/w[arn]: 경고 수준 설정(0-4)
– 기타 -
@ , 응답 파일 읽기
/? 도움말 표시
/help 도움말 표시
/d[efine]: 정의 조건부 컴파일 기호
/nologo 컴파일러 저작권 로고 표시 안 함
/print[ |-] print() 기능 제공
– 고급 -
/codepage: 지정된 코드페이지 ID 사용 오픈소스 파일
/lcid: 메시지 및 기본 코드 페이지에 대해 지정된 LCID
/nostdlib[ |-] 표준 라이브러리(mscorlib.dll)를 가져오지 않고 autoref를 기본값으로 설정합니다. off로 변경
/utf8output[ |-] 다음으로 컴파일러 출력을 내보냅니다. UTF-8 문자 인코딩
/versionsafe[ |-] "재정의" 또는 "숨기기"로 표시되지 않은 멤버에 대한 기본값 지정
.exe 파일 만들기
먼저 다음 내용으로 JS 파일(C:testhelloWorld.js)을 만듭니다.
var date = new Date(); print('Hello World! nToday는 ' date ); 컴파일:
C:test>jsc helloWorld.jsMicrosoft(R) JScript 컴파일러 버전 8.00.50727(Microsoft(R) .NET Framework 버전 2.0.50727용)Copyright(C) Microsoft Corporation 1996-2005. 모든 권리 보유.
C:test 디렉토리에 추가 helloWorld.exe 파일이 있다는 사실에 놀랄 것입니다. 매우 간단합니다. 하하
마지막으로 helloWorld.exe 파일을 직접 실행할 수 있습니다.
C :test>helloWorldHello World! 오늘은 2011년 6월 3일 금요일 23:13:20 UTC
완료! !
.dll 파일 생성
.dll 파일 생성도 매우 간단합니다.
class HelloWorld {
function run() {
var date = new Date()
return 'Hello; 세상! 오늘은 ' 데이트
}
}
}
컴파일 문:
C:test>jsc /t:library LibHW.js
생성된 LibHW.dll 파일에 대해 새 .exe 파일(consumer.js –> Consumer.exe)는 모듈을 가져와서 호출됩니다(Python과 유사).
먼저 Consumer.js 파일을 만듭니다.
import LibHW;var hw = new LibHW.HelloWorld();print(hw.run())
그런 다음 소비자를 컴파일합니다. js 파일을 실행하고 Consumer.exe를 실행합니다.
C:test>jsc Consumer.jsMicrosoft(R) JScript Compiler version 8.00.50727for Microsoft(R) .NET Framework 버전 2.0.50727Copyright(C) Microsoft Corporation 1996-2005 . 모든 권리 보유. C:test>consumerHello World! 오늘은 2011년 6월 4일 토요일 00:42:35 UTC
물론 위 예제의 Consumer.js 파일을 다음과 같이 수정할 수도 있습니다.
import System.Windows.Forms; MessageBox 클래스
import LibHW ;
var hw = new LibHW.HelloWorld()
MessageBox.Show(
hw.run(),
"Dude!",
MessageBoxButtons.OK,
MessageBoxIcon.Exclaim
)
컴파일 문:
C:test>jsc /t:winexe Consumer.js
Double -새롭게 생성된 Consumer.exe 파일을 클릭하세요, 하하, 굉장한 성취감이지 않나요!
위의 예에서 JScript에는 무한한 잠재력이 있음을 알 수 있습니다.
더 읽어보기: