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 相关文章推荐
查找iframe里元素的方法可传参
Sep 11 Javascript
通过JS动态创建一个html DOM元素并显示
Oct 15 Javascript
js中数组结合字符串实现查找(屏蔽广告判断url等)
Mar 30 Javascript
SWFUpload多文件上传及文件个数限制的方法
May 31 Javascript
Bootstrap表单布局
Jul 19 Javascript
JS实现的简易拖放效果示例
Dec 29 Javascript
基于Bootstrap 3 JQuery及RegExp的表单验证功能
Feb 16 Javascript
原生JS实现垂直手风琴效果
Feb 19 Javascript
JavaScript使用indexOf()实现数组去重的方法分析
Sep 04 Javascript
jQuery内容过滤选择器与子元素过滤选择器用法实例分析
Feb 20 jQuery
js实现简单掷骰子小游戏
Oct 24 Javascript
vue 实现特定条件下绑定事件
Nov 09 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实现批量上传单个文件
2015/12/29 PHP
PHP+Redis事务解决高并发下商品超卖问题(推荐)
2020/08/03 PHP
静态页面下用javascript操作ACCESS数据库(读增改删)的代码
2007/05/14 Javascript
javascript下4个跨浏览器必备的函数
2010/03/07 Javascript
prettify 代码高亮着色器google出品
2010/12/28 Javascript
在VS2008中使用jQuery智能感应的方法
2010/12/30 Javascript
jQuery源码分析-01总体架构分析
2011/11/14 Javascript
JavaScript高级程序设计(第3版)学习笔记4 js运算符和操作符
2012/10/11 Javascript
jQuery focus和blur事件的应用详解
2014/01/26 Javascript
JavaScript函数定义的常见注意事项小结
2014/09/16 Javascript
JS实现带有3D立体感的银灰色竖排折叠菜单代码
2015/10/20 Javascript
jQuery实现边框动态效果的实例代码
2016/09/23 Javascript
js中获取键盘按下键值event.keyCode、event.charCode和event.which的兼容性详解
2017/03/15 Javascript
Vue按需加载的具体实现
2017/12/02 Javascript
浅谈基于Vue.js的移动组件库cube-ui
2017/12/20 Javascript
Layui表格监听行单双击事件讲解
2019/11/14 Javascript
JS代码触发事件代码实例
2020/01/02 Javascript
Python实现简易端口扫描器代码实例
2017/03/15 Python
tensorflow建立一个简单的神经网络的方法
2018/02/10 Python
python 信息同时输出到控制台与文件的实例讲解
2018/05/11 Python
Python安装pycurl失败的解决方法
2018/10/15 Python
对python3 sort sorted 函数的应用详解
2019/06/27 Python
python pygame实现滚动横版射击游戏城市之战
2019/11/25 Python
CSS3制作日历实现代码
2012/01/21 HTML / CSS
html5用video标签流式加载的实现
2020/05/20 HTML / CSS
西班牙国家航空官方网站:Iberia
2017/11/16 全球购物
澳大利亚领先的皮肤诊所:Skin Matrix(抗衰老、痤疮专家、药妆护肤)
2018/05/20 全球购物
俄罗斯极限运动网上商店:Board Shop №1
2020/12/18 全球购物
大学生自我鉴定
2013/12/08 职场文书
幼儿教师寄语集锦
2014/04/03 职场文书
食堂厨师岗位职责
2014/08/25 职场文书
安全检查汇报材料
2014/12/26 职场文书
小学教师教学反思
2016/02/24 职场文书
Go 语言结构实例分析
2021/07/04 Golang
Java基础——Map集合
2022/04/01 Java/Android
pytorch实现加载保存查看checkpoint文件
2022/07/15 Python