VBScript 기타 문

VBScript에는 개발자가 효율적인 스크립트를 개발하는 데 도움이되는 몇 가지 다른 중요한 설명이 있습니다. 다음 표에는 이러한 중요한 설명이 나열되어 있습니다. 이 장에서는 예제와 함께 이러한 각 진술에 대해 자세히 설명합니다.

범주 기능 명 / 문명
옵션 명시 적 옵션
스크립트 엔진 ID ScriptEngine
변형 IsArray, IsEmpty, IsNull, IsNumeric, IsObject, TypeName
표현 평가, 실행
제어문 함께 ... 끝으로
수학 함수 무작위 화

명시 적 옵션

Option Explicit 개발자가 다음을 사용하여 변수를 선언하도록합니다. Dim 코드의 일부에서 사용되기 전에 문.

통사론

Option Explicit

우리가 사용한다면 Option Explicit 변수를 선언하지 않으면 인터프리터가 오류를 발생시킵니다.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Option Explicit
         Dim x,y,z,a
         x = 10
         y = 20
         z = fnadd(x,y)
         a = fnmultiply(x,y)

         Function fnadd(x,y)
            fnadd = x+y
         End Function

      </script>
   </body>
</html>

ScriptEngine

ScriptEngine사용중인 스크립팅 언어의 세부 사항을 나타냅니다. 또한 다음과 함께 사용됩니다.ScriptEngineMajorVersion, ScriptEngineMinor Version, ScriptEngineBuildVersion vbscript 엔진의 주 버전, vbscript 엔진의 부 버전 및 vbscript의 빌드 버전을 각각 제공합니다.

통사론

ScriptEngine

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim scriptdetails
         scriptdetails =  " Version " & ScriptEngine & " - "
         'For getting Major version, use ScriptEngineMajorVersion'
        
         scriptdetails = scriptdetails &  ScriptEngineMajorVersion & "."
        
         'For getting Minor version, use ScriptEngineMinorVersion'
         scriptdetails = scriptdetails & ScriptEngineMinorVersion & "."
        
         'For getting Build version, use ScriptEngineBuildVersion'
         scriptdetails = scriptdetails & ScriptEngineBuildVersion 
        
         Document.write scriptdetails

      </script>
   </body>
</html>

IE에서 스크립트 실행시 .html 확장자로 파일을 저장하면 화면에 다음과 같은 결과가 표시됩니다.

Version VBScript - 5.8.16996

비었다

IsEmpty 함수는식이 비어 있는지 여부를 확인하는 데 사용됩니다. 부울 값을 반환합니다.IsEmpty변수가 초기화되지 않았거나 명시 적으로 Empty로 설정된 경우 True를 반환합니다. 그렇지 않으면 표현식은 False를 반환합니다.

통사론

IsEmpty(expression)

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim var, MyCheck
         MyCheck = IsEmpty(var)  
         Document.write "Line 1 : " & MyCheck & "<br />"
        
         var = Null   ' Assign Null.
         MyCheck = IsEmpty(var) 
         Document.write "Line 2 : " & MyCheck & "<br />"
         
         var = Empty   ' Assign Empty.
         MyCheck = IsEmpty(var)
         Document.write "Line 3 : " & MyCheck & "<br />"
        
      </script>
   </body>
</html>

IE에서 스크립트 실행시 .html 확장자로 파일을 저장하면 다음과 같은 결과가 화면에 표시됩니다.

Line 1 : True
Line 2 : False
Line 3 : True

IsNull

함수 IsNull은 식에 유효한 데이터가 있는지 여부를 확인하는 데 사용됩니다. 부울 값을 반환합니다.IsNull 변수가 Null이면 True를 반환하고 그렇지 않으면 식은 False를 반환합니다.

통사론

IsNull(expression)

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim var, res
         res = IsNull(var)
         document.write "Line 1 : " & res & "<br />"
         
         var = Null
         res = IsNull(var)
         document.write "Line 2 : " & res & "<br />"
         
         var = Empty
         res = IsNull(var)
         document.write "Line 3 : " & res & "<br />"

      </script>
   </body>
</html>

IE에서 스크립트 실행시 .html 확장자로 파일을 저장하면 다음과 같은 결과가 화면에 표시됩니다.

Line 1 : False
Line 2 : True
Line 3 : False

IsObject

IsObject 함수는 식에 유효한 개체가 있는지 여부를 확인하는 데 사용됩니다. 부울 값을 반환합니다.IsObject 표현식에 객체 하위 유형이 포함되어 있으면 True를 반환하고 그렇지 않으면 False를 반환합니다.

통사론

IsObject(expression)

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
        Dim fso,b
        b = 10
        set fso = createobject("Scripting.Filesystemobject")
        
        x = isobject(fso)
        Document.write "Line 1 : " &  x  & "<br />" 
        
        y = isobject(b)
        Document.write "Line 2 : " &  y  & "<br />" 

      </script>
   </body>
</html>

IE에서 스크립트 실행시 .html 확장자로 파일을 저장하면 다음과 같은 결과가 화면에 표시됩니다.

Line 1 : True
Line 2 : False

IsNumeric

IsNumeric 함수는 표현식에 숫자 하위 유형이 있는지 여부를 확인하는 데 사용됩니다. 부울 값을 반환합니다.IsObject 식에 숫자 하위 유형이 포함되어 있으면 True를 반환하고 그렇지 않으면 False를 반환합니다.

통사론

IsNumeric(expression)

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim var, chk
         var = 20
         chk = IsNumeric(var)
         Document.write "Line 1 : " &  chk  & "<br />" 
        
         var = "3.1415935745"   
         chk = IsNumeric(var)   
         Document.write "Line 2 : " &  chk  & "<br / >" 
        
         var = "20 Chapter 23.123 VBScript"   
         chk = IsNumeric(var)
         Document.write "Line 3 : " &  chk  & "<br / >" 

      </script>
   </body>
</html>

IE에서 스크립트 실행시 .html 확장자로 파일을 저장하면 화면에 다음과 같은 결과가 표시됩니다.

Line 1 : True
Line 2 : True
Line 3 : False

유형 이름

TypeName 함수는 변수의 변형 하위 유형 정보를 반환하는 데 사용됩니다.

통사론

TypeName(varname)

Typename 함수는 다음 값 중 하나를 반환 할 수 있습니다.

  • 바이트-바이트 값

  • 정수-정수 값

  • Long − Long 정수 값

  • Single − 단 정밀도 부동 소수점 값

  • Double − 배정 밀도 부동 소수점 값

  • 통화-통화 값

  • Decimal − Decimal 값

  • 날짜-날짜 또는 시간 값

  • String-문자열 값

  • 부울-부울 값

  • 비어 있음-초기화되지 않은 값

  • Null-유효한 데이터 없음

  • 개체-개체의 유형 이름

  • Nothing-아직 개체 인스턴스를 참조하지 않는 개체 변수

  • Error

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim ArrVar(2), vartype
         NullVar = Null   ' Assign Null value.

         vartype = TypeName(3.1450)     
         Document.write "Line 1 : " &  vartype  & "<br />" 
         
         vartype = TypeName(432)         
         Document.write "Line 2 : " &  vartype  & "<br />" 
         
         vartype = TypeName("Microsoft")
         Document.write "Line 3 : " &  vartype  & "<br />" 
         
         vartype = TypeName(NullVar)   
         Document.write "Line 4 : " &  vartype  & "< br />" 
         
         vartype = TypeName(ArrVar)    
         Document.write "Line 5 : " &  vartype  & "<br />"

      </script>
   </body>
</html>

IE에서 스크립트 실행시 .html 확장자로 파일을 저장하면 다음과 같은 결과가 화면에 표시됩니다.

Line 1 : Double
Line 2 : Integer
Line 3 : String
Line 4 : Null
Line 5 : Variant()

평가

Eval 함수는 표현식을 실행하고 결과를 문자열 또는 숫자로 반환합니다.

통사론

Eval(expression)

Expression 인수는 문자열 표현식 또는 숫자 일 수 있습니다. Eval 함수에 숫자 표현식이나 함수 이름이 포함되지 않고 단순한 텍스트 문자열 만 포함 된 문자열을 전달하면 런타임 오류가 발생합니다. 예를 들어 Eval ( "VBScript")은 오류를 발생시킵니다.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Document.write Eval("10 + 10") & "<br />"
         Document.write Eval("101 = 200") & "<br />" 
         Document.write Eval("5 * 3") & "<br />" 

      </script>
   </body>
</html>

IE에서 스크립트 실행시 .html 확장자로 파일을 저장하면 다음과 같은 결과가 화면에 표시됩니다.

20
false
15

실행

Execute 문은 실행을위한 하나 이상의 문을 포함하는 문자열 식인 인수를받습니다.

통사론

Execute(expression)

VBScript에서 a = b는 두 가지 방식으로 해석 될 수 있습니다. x 값이 y에 할당되는 할당 문으로 처리 할 수 ​​있습니다. a와 b가 동일한 값을 갖는지 테스트하는 표현식으로 해석 될 수도 있습니다. 그럴 경우 결과는 참입니다. 그렇지 않은 경우 결과는 False입니다. Execute 문은 항상 첫 번째 해석을 사용하고 Eval 문은 항상 두 번째 해석을 사용합니다.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim x
         x = "Global" 
         y = "VBScript"
         Execute("x = y")
         
         msgbox x
         msgbox y
        
      </script>
   </body>
</html>

IE에서 스크립트 실행시 .html 확장자로 파일을 저장하면 다음과 같은 결과가 화면에 표시됩니다.

VBScript
VBScript

와 .. 끝

With 문을 사용하면 개체 이름을 반복해서 명시 적으로 언급하지 않고도 지정된 개체에 대해 일련의 작업을 수행 할 수 있습니다.

통사론

With (objectname)
   statement 1
   statement 2
   statement 3
   ...
   ...
   statement n
End With

다음 스크립트를 실행하면 Winword가 열리고 지정된 텍스트가 입력됩니다.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Msg =  "Vbscript" & vbCrLf & "Programming"
         Set objWord = CreateObject("Word.Application")
         objWord.Visible = True
       
         ' Objects methods are accessed without requaliyfying the objects again.'
         With objWord
            .Documents.Add
            .Selection.TypeText Msg
            .Selection.WholeStory
         End With
         
      </script>
   </body>
</html>

무작위 화

Randomize 문은 개발자가 난수를 생성하는 데 도움이되는 난수 생성기를 초기화합니다.

통사론

Randomize [number]

다음 스크립트를 실행하면 Winword가 열리고 지정된 텍스트가 입력됩니다.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim MyValue
         Randomize   
         MyValue = Int((100 * Rnd) + 1)   ' Generate random value between 1 and 100.
         MsgBox MyValue
        
      </script>
   </body>
</html>

위의 스크립트를 HTML로 저장하고 IE에서 스크립트를 실행하면 다음과 같은 출력이 표시됩니다.

42