Your full service technology partner! 
-Collapse +Expand
ASP Classic
Search ASP Classic Group:

-Collapse +Expand ASP Classic Store

Prestwood eMagazine

August Edition
Subscribe now! It's Free!
Enter your email:

   ► KBWebsite Scri...ASP ClassicLanguage Det...   Print This     
  From the March 2016 Issue of Prestwood eMag
ASP Classic Language Details:
ASP Classic Associative Array (Scripting.Dictionary)
Posted 12 years ago on 12/27/2008 and updated 1/29/2009
ASP Classic Code Snippet:
 A flashcard from our ASP Classic Flashcards Library
 A code snippet from our ASP Classic Code Snippets Page


General Info: Associative Array

A set of unique keys linked to a set of values. Each unique key is associated with a value. Think of it as a two column table. MyArray['CA'] = 'California' MyArray['AR'] = 'Arizona'

Languages Focus: Associative Array

Associative arrays are also known as a dictionary or a hash table in other languages.

ASP Classic Associative Array

Use the scriptiing dictionary object which is available on later versions of ASP Classic (all still commonly in use).

Note: Both Access VBA and VB Classic use a collection for this but collections are not supported in ASP Classic.

Syntax Example:
Dim StateList
set StateList = Server.CreateObject("Scripting.Dictionary")
StateList.Add "CA", "California"
StateList.Add "NV", "Nevada"
Response.Write "I live in " & StateList.Item("CA")

Looping Through An ASP Dictionary

Here's some code that adds a few items to a dictionary and then loops through them using a for each loop.

Dim StateList
Dim Key
set StateList = Server.CreateObject("Scripting.Dictionary")
StateList.Add "CA", "California"
StateList.Add "NV", "Nevada"
StateList.Add "FL", "Florida"
For Each Key in StateList
  Response.Write Key & " is " & StateList(Key) & "<br>"

Here's one more example showing how to loop through Request.QueryString. Just to show you that you can.

Dim Key
For each Key in Request.QueryString
 Response.Write Key & "=" & Request.QueryString(Key)

Exists and Remove

Use Exists to check if a key is in the associative array and Remove to delete it. It's a good idea to check if an element exists prior to deleting it. Here's how:

If StateList.Exists("FL") Then
End If

If you fail to check if an element exists and it doesn't, you will get the following error:

Microsoft VBScript runtime  error '800a802b'
Element not found
/path/yourpage.asp, line 51


No built-in sort function. However, Microsoft provided a good example of how to do this at

More Info

Definition:  Associative Array
FAQ:  Associative Arrays in ASP Classic


Share a thought or comment...
Write a Comment...
Sign in...

If you are a member, Sign In. Or, you can Create a Free account now.

Anonymous Post (text-only, no HTML):

Enter your name and security key.

Your Name:
Security key = P154A1
Enter key:
Code Contributed By Mike Prestwood:

Mike Prestwood is a drummer, an author, and creator of the PrestwoodBoards online community. He is the President & CEO of Prestwood IT Solutions. Prestwood IT provides Coding, Website, and Computer Tech services. Mike has authored 6 computer books and over 1,200 articles. As a drummer, he maintains and has authored 3 drum books. If you have a project you wish to discuss with Mike, you can send him a private message through his PrestwoodBoards home page or call him 9AM to 4PM PST at 916-726-5675 x205.

Visit Profile

 KB Article #101512 Counter
Since 12/27/2008
Go ahead!   Use Us! Call: 916-726-5675  Or visit our new sales site:

©1995-2020 Prestwood IT Solutions.   [Security & Privacy]