변수 유형 vbscript를 어떻게 선언합니까? [복제]
다음은 Option Explicit
세트 가 있거나없는 오류가 발생 합니다.
라는 파일을 만듭니다 dim.vbs
.
Dim a as String
그런 다음 명령 프롬프트에서 실행하십시오.
cscript dim.vbs
Microsoft VBScript 컴파일 오류 : 명령문의 끝이 예상됩니다.
변수 유형을 Option Explicit
설정 하거나 설정 하지 않고 강제하는 방법이 있습니까?
답변
VBScript에서 변수 유형을 어떻게 선언합니까?
당신은 할 수 없습니다.
- VBScript는 정적으로 형식화 된 변수의 개념을 지원하지 않습니다.
- VBScript는 Windows의 ActiveScripting 환경을위한 프론트 엔드 언어입니다.
- 이 환경은
cscript
(명령 줄용) 및wscript
(CMD 창이 표시되지 않도록하려는 경우 )에 의해 호스팅됩니다 . - 이 환경은 또한 클래식 ASP
.asp
/ 용 IIS.asa
및 JavaScript 엔진의 기반이었던 이전 Internet Explorer (Internet Explorer 9 이전)에서 호스팅됩니다 .- "JScript"는 ActiveScripting에서도 지원하는 JavaScript의 브랜드 (또는 방언)입니다. VBScript와 JScript는 둘 다 수행 할 수있는 점에서 유사점을 공유합니다.
- 이 환경은
- ActiveScripting은 COM 개체 작업을위한 것입니다.
VBScript의 구문 은 VBA의 하위 집합이며 거의 상호 이해가 가능합니다 .VBA는 정적 유형 정의없이 변수를 COM Variant
개체 로 암시 적으로 입력하기 때문에 VBScript의 변수에서 사용하는 실제 기본 유형과 거의 동일합니다.
(내부적으로 VBScript 가 입력됩니다. 그렇지 않으면 VBScript에서 COM을 사용하는 것이 불가능합니다. 예상되는 값 유형에 따라 Set
및 Let
키워드 를 사용해야하는 방법이나 방법에 따라 내부적으로 입력이 있음을 알 수 있습니다. Const
VBScript 에서만 특정 리터럴 값 유형 등으로 사용할 수 있습니다 .
비유 : 승용차 운전 면허증 (VBA 작성법을 알고 있음)이 있고 지게차 (VBScript)를 운전하기로 결정했습니다. 승용차를 운전하는 방법을 알고 있고 컨트롤 / 인터페이스가보기 때문입니다. 승용차 운전자로서의 기술은 지게차를 문제없이 즉시 운전할 수 있음을 의미하는 것과 동일합니다 (스티어링 휠, 핸드 브레이크, 운전석, 속도계가 있습니다). 지게차는 할 수없고 할 수 없습니다. 지게차는 매우 다르게 처리합니다 (예 : 후륜 조향, 전기 구동 및 많은 지역 에서 이러한 이유로 지게차 운전자에 대한 전문 면허가 필요합니다 ).
그 있지만 하지 VB 또는 VBA에서 당신이하는 것처럼 VBS 특정 유형과 변수를 선언 할 수, 거기에 있는 당신의 변수가 당신이 원하는 것을 데이터 유형을 포함 할 수 있도록하는 몇 가지 변환 기능.
CBool, CByte, CCur, CDate, CDbl, CInt, CLng, CSng, CStr
예를 들어
Option Explicit
Dim x
x = "1"
WScript.Echo TypeName(x)
x = CInt("1")
WScript.Echo TypeName(x)
x = CInt(1)
WScript.Echo TypeName(x)
생산하다
String
Integer
Integer
변환 할 수없는 값을 변환 함수에 전달하면 유형 불일치 오류가 발생할 수 있습니다. 예를 들어 "x9x"와 같은 문자열은 숫자로 변환 할 수 없으므로 CInt ( "x9x")는 실행을 중지하는 런타임 오류를 발생시킵니다.