欢迎来到.net学习网

欢迎联系站长一起更新本网站!QQ:879621940

您当前所在位置:首页 » Html » 正文

热门阅读

JavaScript开发技术-运行时对象Dictionary

创建时间:2012年05月25日 15:05  阅读次数:(6386)
分享到:

二十一、运行时对象Dictionary


Dictionary是存储数据键和项目对的对象。
创建语法:y = new ActiveXObject("Scripting.Dictionary")
Dictionary 对象等价于 PERL 联合数组。项目可以是数据的任何形式,并存储在数组中。每个项目都与一个具有唯一性的键相联。该键用于取得单个项目,并且通常是整数或字符串,但也可以是除数组以外的任何类型。例如:
var y = new ActiveXObject("Scripting.Dictionary");
y.add ("a", "test");

示例:
//创建Dictionary对象
var sd = new ActiveXObject("Scripting.Dictionary");
sd.add("Name", "Kangjianmin");
sd.add("Age", 36);
sd.add("Gender", "Male");
keys = (new VBArray(sd.Keys())).toArray();//取key列表
values = (new VBArray(sd.Items())).toArray();//取值列表
//遍历字典
for (var i = 0; i < keys.length; i++) {
    alert(keys[i] + "=" + values[i]);
}

1. Dictionary对象属性
(1) Count 属性
返回一个集合或 Dictionary 对象中的条目数。只读属性。
(2) Key 属性
object.Key(key) = newkey
如果在改变一个 key 时没有发现该 key,那么将创建一个新的 key 并且其相关联的 item 被设置为空。
var d;
d = new ActiveXObject("Scripting.Dictionary");

function AddStuff()
{
   var a;
   d.Add("a", "Athens");
   d.Add("b", "Belgrade");
   d.Add("c", "Cairo");
}

function ChangeKey(oldkey, newkey)
{
   var s;
   d.Key("c") = "Ca";
   s = "Key " + oldkey + " changed to " + newkey;
   return(s);
}

(3) Item 属性
在一个 Dictionary 对象中设置或者返回所指定 key 的 item。对于集合则根据所指定的 key 返回一个 item。读/写。
object.Item(key)[ = newitem]
如果在改变一个 key 的时候没有找到该 item,那么将利用所指定的 newitem 创建一个新的 key。如果在试图返回一个已有条目的时候没有找到 key,那么将创建一个新的 key 且其相关的条目被设置为空。
function DicTest(keyword)
{
   var a, d; 
   d = new ActiveXObject("Scripting.Dictionary");
   d.Add("a", "Athens");
   d.Add("b", "Belgrade");
   d.Add("c", "Cairo");
   a = d.Item(keyword);
   return(a);
}

2. Dictionary对象方法
(1) Add 方法
向 Dictionary 对象中添加一个主键条目对。如果 key 已经存在,那么将导致一个错误。
语法:object.Add (key, item)
示例:
var d;
d = new ActiveXObject("Scripting.Dictionary");
d.Add("a", "Athens");
d.Add("b", "Belgrade");
d.Add("c", "Cairo");

(2) Exists 方法
如果 Dictionary 对象中存在所指定的主键则返回 true,否则返回 false。
语法:object.Exists(key)
示例:
function keyExists(k)
{
   var fso, s = "";
   d = new ActiveXObject("Scripting.Dictionary");
   d.Add("a", "Athens");
   d.Add("b", "Belgrade");
   d.Add("c", "Cairo");
   if (d.Exists(k))
      s += "Specified key exists.";
   else 
      s += "Specified key doesn't exist.";
   return(s);
}

(3) Items 方法
返回一个数组,其中包含了一个 Dictionary 对象中的所有条目。
语法:object.Items()
示例:
function ItemsDemo()
{
   var a, d, i, s;//创建一些变量。
   d = new ActiveXObject("Scripting.Dictionary");  
   d.Add ("a", "Athens");//添加一些主键和条目。
   d.Add ("b", "Belgrade");
   d.Add ("c", "Cairo");
   a = (new VBArray(d.Items())).toArray();//获取条目。
   s = "";
   for (i in a)//遍历该 dictionary。
   {
      s += a[i] + "<br>";
   }
   return(s);// 返回结果。
}

(4) Keys 方法
返回一个数组,其中包含了一个 Dictionary 对象中的全部现有的主键。
语法:object.Keys()
示例:
function KeysDemo()
{
   var a, d, i, s;//创建一些变量。
   d = new ActiveXObject("Scripting.Dictionary");  
   d.Add ("a", "Athens");// 添加一些主键和条目。
   d.Add ("b", "Belgrade");
   d.Add ("c", "Cairo");
   a = (new VBArray(d.Keys())).toArray();// 获得主键。
   s = "";
   for (i in a)//遍历 dictionary。
   {
      s += a[i] + " - " + d(a[i]) + "<br>";
   }
   return(s);//返回结果。
}

(5) Remove 方法
从一个 Dictionary 对象中删除一个主键,条目对。
语法:object.Remove(key)
如果所指定的主键,条目对不存在,那么将导致一个错误。
示例:
var a, d, i, s;// 创建一些变量。
d = new ActiveXObject("Scripting.Dictionary");  
d.Add ("a", "Athens");// 添加一些主键条目对。
d.Add ("b", "Belgrade");
d.Add ("c", "Cairo");
...
d.Remove("b");// 删除第二对主键条目对。

(6) RemoveAll 方法
RemoveAll 方法从一个 Dictionary 对象中删除所有的主键,条目对。
语法:object.RemoveAll( )
示例:
var a, d, i;// 创建一些变量。
d = new ActiveXObject("Scripting.Dictionary");
d.Add ("a", "Athens");// 添加一些主键和条目。
d.Add ("b", "Belgrade");
d.Add ("c", "Cairo");
...
d.RemoveAll( );// 清除 dictionary。
;
来源:.net学习网
说明:所有来源为 .net学习网的文章均为原创,如有转载,请在转载处标注本页地址,谢谢!
【编辑:Wyf

打赏

取消

感谢您的支持,我会做的更好!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

最新评论

共有评论0条
  • 暂无任何评论,请留下您对本文章的看法,共同参入讨论!
发表评论:
留言人:
内  容:
请输入问题 77+6=? 的结果(结果是:83)
结  果: