关于JavaScript中的关联数组分析


Posted in Javascript onApril 09, 2013

通常的数组在填充时会隐式或者显示指定数组下标,但JS中数组可以以名字的形式为元素赋值,这就形成了关联数组,如:

var arr=new Array();
arr["china"]="beijing,niaoling,hulan";
arr["usa"]="newyork,washington,atlanta";
arr["japan"]="tokyo";
alert(arr["china"]);
alert(arr["japan"]);
alert(arr[0]);

注意上面的alert(arr[0]);这一句,它会返回undifined。这就意味着,关联数组中,不能再以传统的下标方式来访问数组元素而必须通过元素的名字。
这种通过名字来访问数组元素的形式有可读性高,灵活方便的优势。一定程度上它可以作为JS中的哈希表来使用。
对关联数组进行遍历时需要使用for in 循环,注意以下代码中两种不同的遍历方式:

var arr=new Array();
arr["china"]="beijing,niaoling,hulan";
arr["usa"]="newyork,washington,atlanta";
arr["japan"]="tokyo";
// 这种方式可以遍历关联数组中的名称
for(var item in arr){
alert(item);
}
// 这种方式可以遍历关联数组中的各元素
for(var item in arr){
alert(arr[item]);
}
Javascript 相关文章推荐
在页面上点击任一链接时触发一个事件的代码
Apr 07 Javascript
善用事件代理,警惕闭包的性能陷阱。
Jan 20 Javascript
EasyUI 中 MenuButton 的使用方法
Jul 14 Javascript
z-blog SyntaxHighlighter 长代码无法换行解决办法(jquery)
Nov 16 Javascript
Javascript实现商品秒杀倒计时(时间与服务器时间同步)
Sep 16 Javascript
JS+CSS实现简单滑动门(滑动菜单)效果
Sep 19 Javascript
使用BootStrap实现标签切换原理解析
Mar 14 Javascript
easyui-datagrid特殊字符不能显示的处理方法
Apr 12 Javascript
vue.js实现单选框、复选框和下拉框示例
Jul 18 Javascript
详解javascript常用工具类的封装
Jan 30 Javascript
用vue2.0实现点击选中active其他选项互斥的效果
Apr 12 Javascript
JS加载解析Markdown文档过程详解
May 19 Javascript
分析Node.js connect ECONNREFUSED错误
Apr 09 #Javascript
Node.js生成HttpStatusCode辅助类发布到npm
Apr 09 #Javascript
jQuery学习笔记(3)--用jquery(插件)实现多选项卡功能
Apr 08 #Javascript
jQuery学习笔记(2)--用jquery实现各种模态提示框代码及项目构架
Apr 08 #Javascript
jQuery学习笔记(1)--用jQuery实现异步通信(用json传值)具体思路
Apr 08 #Javascript
Struts2的s:radio标签使用及用jquery添加change事件
Apr 08 #Javascript
Jquery图片滚动与幻灯片的实例代码
Apr 08 #Javascript
You might like
Apache服务器无法使用的解决方法
2013/05/08 PHP
从性能方面考虑PHP下载远程文件的3种方法
2015/12/29 PHP
利用 fsockopen() 函数开放端口扫描器的实例
2017/08/19 PHP
用javascript动态调整iframe高度的代码
2007/04/10 Javascript
Javascript 同时提交多个Web表单的方法
2009/02/19 Javascript
js trim函数 去空格函数与正则集锦
2009/11/20 Javascript
js图片实时加载提供网页打开速度
2014/09/11 Javascript
js交换排序 冒泡排序算法(Javascript版)
2014/10/04 Javascript
让JavaScript和其它资源并发下载的方法
2014/10/16 Javascript
如何用JS判断两个数字的大小
2016/07/21 Javascript
JavaScript数据结构之二叉树的查找算法示例
2017/04/13 Javascript
Node.js操作redis实现添加查询功能
2017/05/25 Javascript
jsonp跨域请求详解
2017/07/13 Javascript
详解Vue Elememt-UI构建管理后台
2018/02/27 Javascript
Vue中android4.4不兼容问题的解决方法
2018/09/04 Javascript
Vue组件间通信方法总结(父子组件、兄弟组件及祖先后代组件间)
2019/04/17 Javascript
vue轮播组件实现$children和$parent 附带好用的gif录制工具
2019/09/26 Javascript
vue vantUI tab切换时 list组件不触发load事件的问题及解决方法
2020/02/14 Javascript
JQuery使用数组遍历跳出each循环
2020/09/01 jQuery
[01:00:13]完美世界DOTA2联赛 LBZS vs Forest 第一场 11.07
2020/11/09 DOTA
浅谈flask源码之请求过程
2018/07/26 Python
对Tensorflow中的变量初始化函数详解
2018/07/27 Python
python url 参数修改方法
2018/12/26 Python
Pandas DataFrame数据的更改、插入新增的列和行的方法
2019/06/25 Python
Python参数传递对象的引用原理解析
2020/05/22 Python
牦牛毛户外探险服装:Kora
2019/02/08 全球购物
英国顶级水晶珠宝零售商之一:Tresor Paris
2019/04/27 全球购物
马来西亚奢侈品牌购物商城:Valiram 247
2020/09/29 全球购物
构造方法和其他方法的区别
2016/04/26 面试题
党员年终民主评议的自我评价
2013/11/05 职场文书
岗位职责的含义
2013/11/17 职场文书
如何写自我鉴定
2014/03/19 职场文书
新员工考核评语
2014/12/31 职场文书
优秀毕业生主要事迹材料
2015/11/04 职场文书
经典励志格言:每日一句,让你每天充满能量
2019/08/16 职场文书
一次线上mongo慢查询问题排查处理记录
2022/03/18 MongoDB