JavaScript 以对象为索引的关联数组


Posted in Javascript onMay 19, 2010

关于JSON对象,你可以参看wikipedia(http://zh.wikipedia.org/zh-cn/JSON),还有官方网站(http://www.json.org/json-zh.html)。

我们常说JavaScript原生支持json,因为我们可以认为json就是对JavaScript的Object对象的灵活应用。

通常我们使用json的方式,主要用作前后台数据交换的格式:

而在代码逻辑中更多的是用关联数组的方式。但即使是这样我们也很少使用对象类型作为键值对的键名。

var a= {}, b= [];

a[b] = new Date(); //通过a[b]可以取得时间值。

键名的类型可以是对象,多么美好的一件事啊!

不过有一个问题。如果你想这么用,需要有一个条件:数据必须是动态添加的。(目前在同学这,没有条件测试其他的浏览器,目前测试了IE8以及搜狗浏览器的IE内核和weikit内核)

测试代码如下:

var d = document.getElementById("hello"), obj = [1,2,3], a = {obj:"test"}; 
a[d] = "DOMElement"; 
alert(a[obj]); //undefined 
alert(a[d]);//DOMElement 
a[obj] = "Array Object"; 
alert(a[obj]);
//Array Object
Javascript 相关文章推荐
Jquery截取中文字符串的实现代码
Dec 22 Javascript
使用jQuery.fn自定义jQuery翻页插件
Jan 20 Javascript
5秒后跳转到另一个页面的js代码
Oct 12 Javascript
javascript使用location.search的示例
Nov 05 Javascript
js 一个关于图片onload加载的事
Nov 10 Javascript
jQuery实现鼠标可拖动调整表格列宽度
May 26 Javascript
js判断登录与否并确定跳转页面的方法
Jan 30 Javascript
jQuery实现拖拽效果插件的方法
Mar 23 Javascript
浅析AngularJS Filter用法
Dec 28 Javascript
JS生成不重复的随机数组的简单实例
Jul 10 Javascript
jquery+ajax实现省市区三级联动效果简单示例
Jan 04 Javascript
小程序实现左滑删除效果
Jul 25 Javascript
JavaScript 语言的递归编程
May 18 #Javascript
JS 树形递归实例代码
May 18 #Javascript
document.getElementById方法在Firefox与IE中的区别
May 18 #Javascript
基于jQuery的固定表格头部的代码(IE6,7,8测试通过)
May 18 #Javascript
Javascript中的变量使用说明
May 18 #Javascript
Javascript实现的鼠标经过时播放声音
May 18 #Javascript
JavaScript 继承机制的实现(待续)
May 18 #Javascript
You might like
php下过滤HTML代码的函数
2007/12/10 PHP
WAF的正确bypass
2017/01/05 PHP
基于swoole实现多人聊天室
2018/06/14 PHP
JsEasy简介 JsEasy是什么?与下载
2007/03/07 Javascript
Extjs中常用表单介绍与应用
2010/06/07 Javascript
js解析xml字符串和xml文档实现原理及代码(针对ie与火狐)
2013/02/02 Javascript
js动态设置div的值下例子
2013/10/29 Javascript
JavaScript中的cacheStorage使用详解
2015/07/29 Javascript
JS+CSS实现的竖向简洁折叠菜单效果代码
2015/10/22 Javascript
Bootstrap所支持的表单控件实例详解
2016/05/16 Javascript
BootStrap 超链接变按钮的实现方法
2016/09/25 Javascript
深入学习js瀑布流布局
2016/10/14 Javascript
解决vue打包之后静态资源图片失效的问题
2018/02/21 Javascript
基于nodejs res.end和res.send的区别
2018/05/14 NodeJs
js中对象与对象创建方法的各种方法
2019/02/27 Javascript
Vue.js自定义指令学习使用详解
2019/10/19 Javascript
如何正确理解vue中的key详解
2019/11/02 Javascript
vue学习笔记之slot插槽用法实例分析
2020/02/29 Javascript
[01:38]DOTA2辉夜杯 欢乐的观众现场采访
2015/12/26 DOTA
Windows系统配置python脚本开机启动的3种方法分享
2015/03/10 Python
使用Python实现BT种子和磁力链接的相互转换
2015/11/09 Python
浅谈pyhton学习中出现的各种问题(新手必看)
2017/05/17 Python
Pyqt实现无边框窗口拖动以及窗口大小改变
2018/04/19 Python
Python利用splinter实现浏览器自动化操作方法
2018/05/11 Python
Python使用pylab库实现绘制直方图功能示例
2018/06/01 Python
python制作简单五子棋游戏
2019/06/18 Python
Win10下安装并使用tensorflow-gpu1.8.0+python3.6全过程分析(显卡MX250+CUDA9.0+cudnn)
2020/02/17 Python
Python接口测试环境搭建过程详解
2020/06/29 Python
html5视频常用API接口的实战示例
2020/03/20 HTML / CSS
司机的工作范围及职责
2013/11/13 职场文书
《孙权劝学》教学反思
2014/04/23 职场文书
党员作风建设整改方案
2014/10/27 职场文书
2014年工程部工作总结
2014/11/25 职场文书
优秀护士事迹材料
2014/12/25 职场文书
入党申请书格式
2019/06/20 职场文书
Python中生成随机数据安全性、多功能性、用途和速度方面进行比较
2022/04/14 Python