데이터 유형을 사용한 VBScript 변수 선언: Dim, String, Boolean

변수는 프로그래밍의 기초를 형성합니다. 변수는 값이나 표현식을 유지하는 데 사용됩니다. 작업할 데이터 조각이 있을 때마다 변수를 선언해야 합니다.

예를 들어 학생의 이름이나 직원의 급여를 저장해야 하는 경우 학생 또는 급여라는 변수를 사용하게 됩니다.

표현식을 유지하는 데 변수를 사용할 수도 있습니다. markE 및 markM 변수를 사용하여 학생의 영어 및 수학 성적을 저장했다고 가정합니다.

총점을 구하고 싶습니다. 그런 다음 markT라는 변수를 사용하고 해당 값을 markE + markM으로 설정할 수 있습니다. 즉, markT = markE + markM입니다. 여기서 markT는 표현식을 보유하는 변수입니다.

변수 선언

변수 선언은 컴퓨터에 메모리 공간을 예약하도록 지시하므로 변수 생성과 동일합니다. 원하는 방식으로 변수 이름을 지정할 수 있습니다. x, y 또는 z와 같은 짧은 이름일 수도 있고 학생, 이름, 급여 등과 같이 자체 설명하는 이름일 수도 있습니다. 변수에 명확하고 의미 있는 이름을 제공하는 것은 좋은 프로그래밍 방식으로 간주됩니다.

VBScript 변수 이름에는 특정 규칙이 있습니다.

  1. 변수 이름은 문자로 시작해야 합니다. 예: 급여, 마크 등. 숫자나 특수 문자로 시작하는 변수는 허용되지 않습니다. 예: 1stSchool, 3rdCar, _name 등.
  2. 변수 이름은 255자를 초과할 수 없습니다.
  3. 변수 이름에는 마침표(.)가 포함될 수 없습니다.

변수를 선언하려면 Dim 키워드를 사용해야 합니다. 귀하가 "salary"라는 변수를 사용할 계획이라고 가정해 보겠습니다. VB스크립트 프로그램, 구문

Dim salary;

VBS 변수를 선언하는 것만으로는 도움이 되지 않습니다. 이를 사용하십시오. 어떤 시점에서 변수에 값을 할당해야 하며 이 프로세스를 변수 초기화라고 합니다. 가변적으로 이름이 지정된 급여를 선언하려는 경우 다음과 같이 코딩할 수 있습니다.

Dim salary
salary = 10000

확인해야 할 중요한 점은 변수를 선언할 때 변수에 값을 할당해서는 안 된다는 것입니다. 다음과 같은 명령문을 작성한다고 가정해 보겠습니다.

Dim salary = 10000

document.write를 사용하여 급여를 출력하려고 하면 어떤 출력도 반환되지 않습니다.

코드 예제

단계 1) 텍스트 편집기를 열고 다음 코드 줄을 추가합니다.

<html>
<head>
<title>Variables</title>
</head>
<body>

<script type="text/vbscript">
Dim variable1
variable1="John"
document.write(variable1)
‘Dim variable2 = "Smith"
‘document.write(variable2)
</script>

</body>
</html>

단계 2) 이 파일을 원하는 위치에 variable.html로 저장한 다음 IE에서 엽니다(이전 장에서 지정한 단계를 따릅니다). 이제 브라우저에서 John 값을 볼 수 있습니다.

단계 3) 다음으로, 11번과 12번 줄의 주석 처리를 해제하세요.

파일을 다시 저장하고 이미 열려 있는 경우 IE 브라우저를 새로 고치거나 IE 브라우저에서 파일을 엽니다. 아무것도 보이지 않는 것이 이상할 수도 있습니다. 존도 스미스도 아닙니다. 여기서 문제는 변수를 선언하면서 허용되지 않는 값을 변수에 할당하려고 했다는 것입니다.

느슨한 바인딩

VBScript는 변수를 선언하지 않고도 변수를 사용할 수 있는 자유를 제공합니다(느슨한 바인딩이라고 함). 예를 들어, Dim Student라는 구문 없이도 Student = “John”과 같이 변수 Student에 값을 할당할 수 있습니다.

그러나 이는 결코 좋은 프로그래밍 습관이 아닙니다. 변수를 선언하지 않고 사용하고 다시 사용할 때 동일한 변수의 철자를 잘못 입력하면 VBScript에서는 오류 메시지를 표시하지 않습니다.

따라서 코드를 더 쉽게 읽고 오류를 식별하려면 코드 시작 부분에 Option Explicit 문을 사용해야 합니다. 그렇게 하는 것을 잊어버린 경우에도 모든 변수를 선언해야 합니다. 변수 유형 관련 문제를 방지하려면 항상 VBScript 코드 시작 부분에 Option Explicit 문을 지정하는 것이 좋습니다.

코드 예 :

단계 1) 텍스트 편집기를 열고 다음 코드 줄을 추가합니다.

<html>
<body>
<script type="text/vbscript">
Option Explicit
‘Dim markE, markM, markT
markE=90
markM=86
markT=markE+markM
document.write("Your marks in English is " & markE & "." & "<br />")
document.write("Your marks in Mathematics is " & markM & "." & "<br />")
document.write("Your total marks is " & markT & ".")
</script>

</body>
</html>

단계 2) 원하는 위치에 파일을 Variable.html로 저장합니다. 이제 Internet Explorer에서 파일을 열면 화면이 비어 있습니다. 왜 ? 명시적인 옵션을 사용했지만 사용하기 전에 변수를 선언하지 않았기 때문입니다.

단계 3) 이제 Option Explicit 문의 중요성을 이해하려면 위 코드에서 5행의 주석 처리를 제거하세요.

단계 4) Variable.html 파일을 저장하고 브라우저를 새로 고치십시오. 이제 출력은 다음과 같습니다.

느슨한 바인딩

주의 사항 – 두 문자열을 연결하려면 “&”를 사용해야 합니다. 위의 예에서는 document.write 명령 내부에서 사용되었습니다. 총점 계산이 잘못된 것은 명백합니다. 이제 VBScript 코드 시작 부분에 첫 번째 문 Option Explicit을 추가하기만 하면 됩니다(Dim 문 제외).

파일을 저장하고 출력을 확인합니다. 코드에 오류가 있음을 나타내는 아무것도 출력되지 않습니다. 여기서 오류는 Option Explicit 문을 지정한 후에도 사용하기 전에 변수를 선언하지 않았다는 것입니다.

public Student 또는 Private Student와 같이 공개 및 비공개 키워드를 사용하여 변수를 선언할 수도 있습니다. 그러나 변수 선언에 이 두 키워드를 사용하면 변수의 범위가 변경되므로 더욱 주의해야 합니다.

단일 변수에 여러 값을 저장할 수도 있으며 이러한 변수는 다음과 같이 알려져 있습니다. VBScript 배열 변수. 예를 들어, 30명의 학생의 이름, 점수, 주소 등의 세부 정보를 저장하고 싶다고 가정해 보겠습니다. 이름, 점수, 주소 등에 대한 30개의 변수 세트를 만들고 관리하는 것은 정말 어려울 것입니다.

대신, Students라는 단일 변수를 선언하고 이 변수에 학생 30명 모두의 이름을 저장할 수 있습니다. 이러한 경우 변수를 Dim Students(29)(배열 인덱스는 XNUMX부터 시작)로 선언하고 다음과 같이 값을 할당합니다.

students(0) = "John"
students(1) = "Hannah"
students(2) = "Kevin"
.......
.......
students(28) = "Rose"
students(29) = "Emma"

마찬가지로 마크, 주소 등과 같은 변수를 생성하여 학생 30명 모두의 해당 값을 저장할 수 있습니다. 최대 60차원의 다차원 배열을 만들 수도 있습니다.

코드 예 :

텍스트 편집기를 열고 다음 코드 줄을 추가합니다.

<html>
<body>

<script type="text/vbscript">
Option Explicit
Dim students(19), marks(19)
students(0) = "John"
marks(0) = 95
students(1) = "Emma"
marks(1) = "83"
students(2) = "Kevin"
marks(2) = 87
 
document.write(students(0) & " has scored " & marks(0)  & ".<br />")
document.write(students(1) & " has scored " & marks(1)  & ".<br />")
document.write(students(2) & " has scored " & marks(2)  & ".<br />")
</script>

</body>
</html>

여기서 우리는 세 명의 학생에 대한 세부 정보만 저장했습니다. 배열 크기를 20으로 설정했기 때문에(인덱스가 20에서 시작하므로) 최대 0명의 학생에 대한 세부 정보를 추가할 수 있습니다.

VBScript 데이터 유형

이전 섹션에서 변수에 서로 다른 유형의 데이터를 할당한 것을 눈여겨보셨을 것입니다. 서로 다른 변수에 숫자(점수와 급여), 문자열(이름) 등을 저장했습니다.

이러한 숫자, 문자열 등은 다음과 같이 알려져 있습니다. 데이터 유형. 실제로 VBScript에는 Variant라는 데이터 유형이 하나만 있습니다. 변형은 다양한 종류의 정보를 보유할 수 있는 특별한 종류의 데이터 유형입니다.

숫자 컨텍스트에서 Variant를 사용하면 숫자처럼 동작하고 문자열 컨텍스트에서 사용하면 문자열처럼 동작합니다.

즉, 급여=10000을 지정하면 VBScript는 급여가 숫자 데이터 유형이라고 가정합니다. Variant는 데이터의 성격을 구체적으로 구분합니다. 예를 들어 변형 유형을 사용하여 부울 값, 통화, 날짜 등을 저장할 수 있습니다.

Variant에 포함될 수 있는 이러한 다양한 정보 범주를 하위 유형이라고 합니다. 대부분의 경우 Variant는 포함된 데이터에 가장 적합한 방식으로 작동하지만 다양한 하위 유형을 알고 있어야 합니다.

다음은 VBScript 데이터 유형 목록입니다.

  • 비어 있음: 아직 값이 할당되지 않은 변수를 나타내는 특수 하위 유형입니다.
  • Null: Null 값이 할당된 변수를 나타내는 특수 하위 유형입니다.
  • 정수: 2바이트를 사용하여 -32,768~32,767 범위의 부호 있는 정수를 표현합니다.
  • Long: 4바이트를 사용하여 -2,147,483,648부터 2,147,483,647 범위의 부호 있는 정수를 표현합니다.
  • 단일: 4바이트를 사용하여 -3.402823e38에서 -1.401298e-45까지의 음수 값과 1.401298e-45에서 3.402823e38까지의 양수 값을 부동 소수점 형식으로 표현합니다.
  • Double: -8e1.79769313486232에서 -308e-4.94065645841247까지의 음수 값과 324e-4.94065645841247에서 324e1.79769313486232까지의 양수 값을 부동 소수점 형식으로 표현하기 위해 308바이트를 사용합니다.
  • 통화: -8에서 922,337,293,685,477.5808까지의 922,337,293,685,477.5807진수 형식의 실수를 표현하기 위해 XNUMX바이트를 사용합니다.
  • 날짜: 8년 1월 100일부터 31년 9999월 XNUMX일까지의 날짜를 표현하기 위해 XNUMX바이트를 사용합니다.
  • 문자열: 문자당 1바이트를 사용하여 최대 약 2억 자에 달하는 문자 시퀀스를 표현합니다.
  • 객체: 객체에 대한 참조를 나타내는 특수 하위 유형입니다.
  • 오류: 오류 번호를 나타내는 특수 하위 유형입니다.
  • 부울: 2바이트를 사용하여 True 또는 False를 포함합니다.
  • Byte : 1바이트를 사용하여 0~255 범위의 정수를 표현합니다.

XNUMX개가 내장되어 있어요 VBScript 함수 이는 변수의 하위 유형인 "varType()" 및 "typeName()"을 아는 데 도움이 됩니다.

var 유형은 숫자 표현을 반환하고 typeName()은 변수 하위 유형의 텍스트 표현을 반환합니다. 각 하위 유형에는 미리 정의된 숫자 표현이 있습니다.

코드 예제

텍스트 편집기를 열고 다음 코드 줄을 추가합니다.

<html>
<head>
<script type="text/vbscript">
Option Explicit
Dim a
a = Empty
document.write("a = " & a & "<br />")
document.write("The numeric representation of a is " & VarType(a)  & "<br />")
document.write("The variable a is of " & TypeName(a) & " data type."  & "<br /><br />")

Dim b
b = Null
document.write("b = " & b & "<br />")
document.write("The numeric representation of b is " & VarType(b)  & "<br />")
document.write("The variable b is of " & TypeName(b) & " data type."  & "<br /><br />")

Dim c
c = 4
document.write("c = " & c & "<br />")
document.write("The numeric representation of c is " & VarType(c)  & "<br />")
document.write("The variable c is of " & TypeName(c) & " data type."  & "<br /><br />")

Dim d
d = -2100483648
document.write("d = " & d & "<br />")
document.write("The numeric representation of d is " & VarType(d)  & "<br />")
document.write("The variable d is of " & TypeName(d) & " data type."  & "<br /><br />")

Dim e
e = -3.402823E38
document.write("e = " & e & "<br />")
document.write("The numeric representation of e is " & VarType(e)  & "<br />")
document.write("The variable e is of " & TypeName(e) & " data type."  & "<br /><br />")

Dim f
f = "John"
document.write("f = " & f & "<br />")
document.write("The numeric representation of f is " & VarType(f)  & "<br />")
document.write("The variable f is of " & TypeName(f) & " data type."  & "<br /><br />")

Dim g
g = True
document.write("g = " & g & "<br />")
document.write("The numeric representation of g is " & VarType(g)  & "<br />")
document.write("The variable g is of " & TypeName(g) & " data type."  & "<br /><br />")
</script>

</head>
<body>
</body>
</html>

파일을 subtype.html로 저장하고 IE에서 엽니다. 출력은 다음과 같습니다.

VBScript 데이터 유형

참고: 다음을 사용하여 변수를 선언할 수도 있습니다. 공개 and 사설 공립 학생 또는 사립 학생과 같은 키워드입니다. 그러나 변수 선언에 이 두 키워드를 사용하면 변수의 범위가 변경되므로 더욱 주의해야 합니다.

요약

  • 변수는 프로그래밍하는 동안 값이나 표현식을 유지하는 데 사용됩니다. 변수는 별도로 선언하고 초기화해야 합니다.
  • 변수를 선언하지 않고도 사용할 수 있지만 변수를 사용하기 전에 선언하는 것은 좋은 프로그래밍 방식으로 간주됩니다.
  • 변형은 VBScript의 유일한 데이터 유형이며 변형에는 문자열, 부울, 정수, 통화 등을 포함한 다양한 하위 유형이 있습니다.

문제해결

코드를 실행한 후 빈 페이지가 표시되면 다음을 수행하십시오.

  • F12를 눌러 개발자 도구를 엽니다.
  • 왼쪽 도구 모음에서 "에뮬레이션" 설정 페이지가 나타날 때까지 아래로 스크롤합니다.
  • 문서 모드를 기본값("Edge")에서 10으로 변경합니다.
  • 다음 코드를 head에 추가하세요.
    <meta http-equiv="x-ua-compatible" content="IE=10">