`
cuisuqiang
  • 浏览: 3938768 次
  • 性别: Icon_minigender_1
  • 来自: 北京
博客专栏
3feb66c0-2fb6-35ff-968a-5f5ec10ada43
Java研发技术指南
浏览量:3652830
社区版块
存档分类
最新评论

JS 中存储数据的对象 Dictionary ,回复JS中Map对象模拟

    博客分类:
  • JS
 
阅读更多

之前写了一个 JS 自定义对象实现Java中的Map对象功能 ,但是遭到许多人的指责,大家都说JS中已经有相关的实现。

当然,我非常感谢大家的批评,但是由于本人JS功底并不是特别好,所以可能绕弯走了远路,大家就当学习吧!

 

我查询了JS的API,发现了有Dictionary这个对象,那么我把这个对的相关属性和方法都看了一遍,做个例子大家看看,也是我的学习吧!

 

Dictionary 对象

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

y = new ActiveXObject("Scripting.Dictionary")

说明

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

 

增加

 

var dic = new ActiveXObject("Scripting.Dictionary");
// 增加
dic.add ("a", "aaaaaa");

 

是否存在

 

if (dic.Exists("a"))
	alert("true");
else
	alert("false");

 

获得某值

 

alert(dic.Item("a"));

 

修改值

 

dic.Item("a") = "dddddd";
alert(dic.Item("a"));

 

修改主键

 

dic.Key("a") = "d";
alert(dic.Item("d"));

 

删除某值

 

dic.Remove("a");

 

删除所有的值

 

dic.RemoveAll();

 

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

 

var arr = (new VBArray(dic.Items())).toArray();   //获取条目
var str = "";
for (var i in arr) { //遍历该 dictionary
	str += arr[i] + "-";
}
alert(str);

 

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

 

arr = (new VBArray(dic.Keys())).toArray();  // 获得主键
str = "";
for (var i in arr) { //遍历 dictionary
	str += arr[i] + "-" + dic(arr[i]) + " | ";
}
alert(str);

 

获得对象的条目数

var a = (new VBArray(dic.Keys()));    // 获取主键
var s = "";
for (i = 0; i < dic.Count; i++) { //遍历 dictionary
	s += a.getItem(i) + "-" + dic(a.getItem(i)) + " | ";
}
alert(s);

 

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

 

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

 

请您到ITEYE看我的原创:http://cuisuqiang.iteye.com

或支持我的个人博客,地址:http://www.javacui.com

 

1
2
分享到:
评论
6 楼 cuisuqiang 2012-07-18  
lshhjxlj 写道
JS代码就不要说是java代码,好吗?

我有点懒,不好意思了
5 楼 lshhjxlj 2012-07-18  
JS代码就不要说是java代码,好吗?
4 楼 cuisuqiang 2012-06-26  
zhukewen_java 写道
只能在ie上跑的没有任何意义。

全当学习吧
3 楼 zhukewen_java 2012-06-26  
只能在ie上跑的没有任何意义。
2 楼 lionfox 2012-06-26  
打错了,是除非没有其他途径
1 楼 lionfox 2012-06-26  
貌似除非有其他途径,否则不建议使用 ActiveXObject的,因为这个好像要调整IE的设置,且只能在IE上跑

相关推荐

    Dictionary对象使用方法

    Dictionary对象使用方法 1.Dictionary对象的成员概要 2. 对Dictionary中增加和删除条目 3. 修改键或条目的值

    JavaScript中创建字典对象(dictionary)实例

    主要介绍了JavaScript中创建字典对象(dictionary)实例,本文直接给出了实现的源码,并给出了使用示例,需要的朋友可以参考下

    C#中Json 解析类库,使用dictionary 解析未知字段的对象

    C#中Json 解析类库,C# 解析json 时,通常使用的是强类型对象反序列化,但是有时候不知道具体的对象时,使用该类库,使用dictionary 解析弱类型数据

    用Dictionary写的对象池

    还不错的一个对象池,用Dictionary来写的,如果你是在学习中,可以下来观摩一下!

    JS中的算法与数据结构之字典(Dictionary)实例详解

    本文实例讲述了JS中的算法与数据结构之字典(Dictionary)。分享给大家供大家参考,具体如下: 字典(Dictionary) 字典(Dictionary)是一种以 键-值对 形式存储数据的数据结构 ,就如同我们平时查看通讯录一样,要找一...

    ios对象dictionary互转库

    ios对象dictionary互转库,代码里面有详细的描述,使用也非常简单

    dictionary.js:名称值存储

    dictionary.js 旨在与和一起使用 入门 该项目依赖于 。 假设您的系统上已经安装了Node.js ,请运行以下命令: npm install -g gulp 接下来,克隆存储库并安装项目依赖项: # Fetch only the latest commits. git...

    ActiveX 部件不能创建对象 Scripting.Dictionary解决办法

    ActiveX 部件不能创建对象 Scripting.Dictionary解决办法

    iOS对象转字典 object2Dictionary

    iOS对象转字典 object2Dictionary 从项目中提取出来的,对象转为字典,对象转为json;

    php Dictionary类似JS字典库v0.01

    //应用字库类 * * $DataDict=new yfqian_Dict(); //new 一个字库对象 * * //以自定义方式索引字典库,使用该方法后,不可用于push自动插入字符串 * $DataDict-&gt;set($key,$...该结构类似 js 的 Dictionary。

    DataDictionary(数据字典工具)

    查看数据库数据字典,包括表、视图、索引、存储过程等内容; 支持SQL Server和Oracle两大商业数据库; 能将数据字典导出为Html、XML、Word等文件格式; 免费注册、免费使用; 没有注册,会定时弹出About窗口。

    JSON与js对象序列化实例详解

    本文实例讲述了JSON与js对象序列化。分享给大家供大家参考,具体如下: JavaScript对象表示法(JavaScript ...大多数编程语言都有被映射为JSON的数据类型,比 如对象(object),字典(dictionary),哈希表(hash map

    ASP Dictionary 对象

    Dictionary 对象用于在名称/值对中存储信息。 尝试一下 – 实例 本例演示如何创建一个 Dictionary 对象,然后使用 Exists 方法来检查指定的键是否存在。 本例演示如何使用 Items 方法来返回一个所有项目的数组。 ...

    javascript_api

    存储数据键、项对的对象。 Dictionary 对象 提供集合中的项的枚举。 Enumerator 对象 包含在运行 JScript 代码时发生的错误的有关信息。 Error 对象 提供对计算机文件系统的访问。 FileSystemObject 对象 创建一...

    asp dictionary对象的用法

    如果在session级保存一个dictionary对象会降低系统的性能,而在application级保存一个dictionary对象会导致web服务器崩溃,关于这个就不在多说了。 现在我们要考虑的是dictionary对象在单页的时候,有哪些设计时的...

    JavaScript多语言实现

    dictionary = dic; var selectors = "a,span,td,font,h1,h2,li,div,legend,option,input"; lazyLocalize.init({ lang : 'en',//navigator.language || navigator.userLanguage, dictionary : dictionary,...

    C#集合Dictionary中按值的降序排列

    集合Dictionary中按键排序较容易实现,本例实现了C#集合Dictionary中按值的降序排列。

    C#数组中List, Dictionary的相互转换问题

    将数组转换为Dictionary 将Dictionary 转换为数组 将List转换为Dictionary 将Dictionary转换为List 首先这里定义了一个“Student”的类,它有三个自动实现属性。 class Student { public int Id { get; set; ...

    dictionary.js:使用各种数据结构JavaScript的字典实现

    Dictionary.js 使用各种数据结构的字典JavaScript实现。测验npm test

Global site tag (gtag.js) - Google Analytics