VBScript Tutorials - Herong's Tutorial Examples - Version 5.20, by Dr. Herong Yang

Array References Work Like Arrays

This section provides a tutorial example on how to use an array reference like an array to access referenced array elements, to re-size the referenced array, and to pass the referenced array into functions.

After learning that a scalar variable can be used to store the reference of an array, let's try to learn more about array reference:

  • An array reference is a scalar value. This is why it can be assigned to a scalar variable.
  • A scalar variable holding an array reference can be used like an array variable.
  • "array_reference(i)" represents the element of index i of the referenced array.
  • "ReDim Preserve array_reference(n)" resets the size of the referenced array.
  • When an array reference is used as a function argument, the referenced array is passed into the function, not the reference. For example, "TypeName(array_reference)" returns Variant().

To show you how an array reference works I wrote the following example, array_reference.html:

<html>
<body>
<!-- array_reference.html
 - Copyright (c) 2015, HerongYang.com, All Rights Reserved.
-->
<pre>
<script language="vbscript">
   Dim aReference
   Dim anArray(1)

   anArray(0) = "Dog"
   anArray(1) = "Cat"

   aReference = anArray  'An array reference is assigned
   aReference(0) = "Pig" 'Accessing an element through the reference
   ReDim Preserve aReference(2)   'Re-sizing the referenced array
   aReference(2) = "Fox"

   upperLimit = UBound(aReference) 'The referenced array is passed
   
   document.writeln("TypeName(aReference): " & TypeName(aReference))
   document.writeln("UBound(aReference): " & upperLimit)
   For Each e In aReference
      document.writeln("   " & e )
   Next
</script>
</pre>
</body>
</html>

Here is the output:

TypeName(aReference): Variant()
UBound(aReference): 2
   Pig
   Cat
   Fox

The output confirms that all notes mentioned earlier in this section are true.

Table of Contents

 About This Book

 Introduction of VBScript - Visual Basic Scripting Edition

 Variant Data Type, Subtypes, and Literals

 Arithmetic Operations

 Numeric Comparison Operations and Logical Operations

 String Operations - Concatenation and Comparison

 Variable Declaration and Assignment Statement

 Expression and Order of Operation Precedence

 Statement Syntax and Statement Types

 Array Data Type and Related Statements

Array References and Array Assignment Statements

 Assigning an Array to a Scalar Variable

Array References Work Like Arrays

 "Array()" Function - Returning a Scalar Reference of an Array

 Creating a Copy of an Array

 "Type mismatch" Runtime Error - Assignments to Array Variables

 Conditional Statements - "If ... Then" and "Select Case"

 Loop Statements - "For", "While", and "Do"

 "Function" and "Sub" Procedures

 Built-in Functions

 Inspecting Variables Received in Procedures

 Error Handling Flag and the "Err" Object

 Regular Expression Pattern Match and Replacement

 scrrun.dll - Scripting Runtime DLL Library

 Creating Your Own Classes

 IE Web Browser Supporting VBScript

 IIS ASP Server Supporting VBScript

 WSH (Windows Script Host)

 References

 Printable Copy - PDF Version

Array References Work Like Arrays - Updated in 2015, by Dr. Herong Yang