JavaScript中的 Dictionary 的用法

function ok(){  
  debugger
  try{  
   var obj = new ActiveXObject("Scripting.Dictionary");//创建对象  
   obj.Add("hello",null);//增加新项  
   obj.Item("hello")="Chiweiyao";//给新增添的项赋值  
   obj.Add("world",null);  
   obj.Item("world")="Greate";  
     
   //获取值 
  alert( obj.item(
"world")); var keys=obj.Keys().toArray();//将obj对象的键值转换成数组 for(var i = 0;i<keys.length;i++){ if(obj.Exists(keys[i])){//判断对象集合中是否存在指定键值的项 obj.Item(keys[i])=null; obj.Remove(keys[i]);//删除指定键值项 } } } catch(e) { alert(e.message); } }
把学习一种技术一直坚持下去。

Dictionary 对象

存储数据键和项目对的对象。

y = new ActiveXObject("Scripting.Dictionary")

说明

Dictionary 对象等价于 PERL 联合数组。项目可以是数据的任何形式,并存储在数组中。每个项目都与一个具有唯一性的键相联。该键用于取得单个项目,并且通常是整数或字符串,但也可以是除数组以外的任何类型。

 

增加

 

Java代码  收藏代码
  1. var dic = new ActiveXObject("Scripting.Dictionary");  
  2. // 增加  
  3. dic.add ("a""aaaaaa");  

 

是否存在

 

Java代码  收藏代码
  1. if (dic.Exists("a"))  
  2.     alert("true");  
  3. else  
  4.     alert("false");  

 

获得某值

 

Java代码  收藏代码
  1. alert(dic.Item("a"));  

 

修改值

 

Java代码  收藏代码
  1. dic.Item("a") = "dddddd";  
  2. alert(dic.Item("a"));  

 

修改主键

 

Java代码  收藏代码
  1. dic.Key("a") = "d";  
  2. alert(dic.Item("d"));  

 

删除某值

 

Java代码  收藏代码
  1. dic.Remove("a");  

 

删除所有的值

 

Java代码  收藏代码
  1. dic.RemoveAll();  

 

根据条目遍历对象的值内容

 

Java代码  收藏代码
  1. var arr = (new VBArray(dic.Items())).toArray();   //获取条目  
  2. var str = "";  
  3. for (var i in arr) { //遍历该 dictionary  
  4.     str += arr[i] + "-";  
  5. }  
  6. alert(str);  

 

遍历对象的Key,然后获得内容条目

 

Java代码  收藏代码
  1. arr = (new VBArray(dic.Keys())).toArray();  // 获得主键  
  2. str = "";  
  3. for (var i in arr) { //遍历 dictionary  
  4.     str += arr[i] + "-" + dic(arr[i]) + " | ";  
  5. }  
  6. alert(str);  

 

获得对象的条目数

Java代码  收藏代码
  1. var a = (new VBArray(dic.Keys()));    // 获取主键  
  2. var s = "";  
  3. for (i = 0; i < dic.Count; i++) { //遍历 dictionary  
  4.     s += a.getItem(i) + "-" + dic(a.getItem(i)) + " | ";  
  5. }  
  6. alert(s);  

 

想Map一样,Key和Value,使用JS内部的对象

 

以上是在火狐上运行的结果,也就是说这个对象是IE的对象,不属于标准之中,所以使用时注意点吧!

原文地址:https://www.cnblogs.com/JuneZhang/p/3081284.html