网络编程
位置:首页>> 网络编程>> JavaScript>> Scripting.Dictionary 对象

Scripting.Dictionary 对象

作者:CNLei 来源:CNLei.blog 发布时间:2007-10-13 09:46:00 

标签:Dictionary,VBScript,Jscript

许多 Microsoft 的编程语言,如 Visual Basic、VBScript 和 Jscript,都提供集合(collection)。可以把集合想象为数组,可以使用其中内建的函数完成存储和操纵数据等基本任务。无须担心数据是在哪些行列,而是使用唯一的键进行访问。

VBScript 和 Jscript 都提供类似的对象,通称 Scripting.Dictionary 对象或 Dictionary 对象。它类似于二维数组,把键和相关条目的数据存放在一起。然而真正的面向对象的方法,不应直接访问数据条目,必须使用 Dictionary 对象支持的方法和属性来实现。

创建和使用 Dictionary 对象

创建一个 Dictionary 对象的示例如下:

’In VBScript:
Dim objMyData
Set objMyData = Server.CreateObject("Scripting.Dictionary")
//In Jscript:
var objMyData = Server.CreateObject(’Scripting.Dictionary’);
<!-- Server-Side with an OBJECT element -->
<OBJECT RUNAT="SERVER" SCOPE="PAGE" ID="objMyData" PROGID="Scripting.Dictionary"></OBJECT>


Dictionary 对象还可用于客户端的 IE 中。

Dictionary 对象的成员概要

表1和表2列出了 Dictionary 对象的属性和方法及相应的说明。

当增加一个键/条目对时,如果该键已存在;或者删除一个键/条目对时,该关键字/条目对不存在,或改变已包含数据的 Dictionary 对象的 CompareMode,都将产生错误。

表1 Dictionary 对象的属性和说明
属性说明
CompareMode设定或返回键的字符串比较模式(仅用于 VBScript)
Count只读。返回 Dictionary 里的键/条目对的数量
Item(key)设定或返回指定的键的条目值
Key(key)设定键值
表2 Dictionary 对象的方法和说明
方法说明
Add(key,item)增加键/条目对到 Dictionary
Exists(key)如果指定的键存在,返回 True,否则返回 False
Items()返回一个包含 Dictionary 对象中所有条目的数组
Keys()返回一个包含 Dictionary 对象中所有键的数组
Remove(key)删除一个指定的键/条目对
RemoveAll()删除全部键/条目对

对 Dictionary 中增加和删除条目

一旦得到一个新的(空的)Dictionary,可以对其添加条目,从中获取条目以及删除条目:

'In VBScript:


objMyData.Add "MyKey", "MyItem" 'Add Value MyItem with key MyKey
objMyData.Add "YourKey", "YourItem" 'Add value YourItem with key YourKey
blnIsThere = objMyData.Exists("MyKey") 'Returns True because the item exists
strItem = objMyData.Item("YourKey") 'Retrieve value of YourKey
strItem = objMyData.Remove("MyKey") 'Retrieve and remove YourKey
objMyData.RemoveAll 'Remove all the items
// In JScript;
objMyData.Add ('MyKey', 'MyItem'); //Add Value MyItem with key MyKey
objMyData.Add ('YourKey', 'YourItem'); //Add value YourItem with key YourKey
var blnIsThere = objMyData.Exists('MyKey'); //Returns True because the item exists
var strItem = objMyData.Item('YourKey'); //Retrieve value of YourKey
var strItem = objMyData.Remove('MyKey'); //Retrieve and remove YourKey
objMyData.RemoveAll(); //Remove all the items

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com