关于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 相关文章推荐
jQuery 1.0.4 - New Wave Javascript(js源文件)
Jan 15 Javascript
自己整理的一个javascript日期处理函数
Oct 16 Javascript
jQuery选择器之基本选择器与层次选择器
Mar 03 Javascript
Javascript编写俄罗斯方块思路及实例
Jul 07 Javascript
原生JS取代一些JQuery方法的简单实现
Sep 20 Javascript
关于 jQuery Easyui异步加载tree的问题解析
Dec 06 Javascript
JS绘制微信小程序画布时钟
Dec 24 Javascript
JS+html5制作简单音乐播放器
Sep 13 Javascript
Vue引用Swiper4插件无法重写分页器样式的解决方法
Sep 27 Javascript
基于Webpack4和React hooks搭建项目的方法
Feb 05 Javascript
微信小程序如何播放腾讯视频的实现
Sep 20 Javascript
vue 如何使用递归组件
Oct 23 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
FleaPHP框架数据库查询条件($conditions)写法总结
2016/03/19 PHP
PHP并发多进程处理利器Gearman使用介绍
2016/05/16 PHP
PHP通过引用传递参数用法分析
2016/12/01 PHP
jQuery插件Timelinr 实现时间轴特效
2015/10/04 Javascript
JS实现屏蔽网页右键复制及ctrl+c复制的方法【2种方法】
2016/09/04 Javascript
微信小程序 在Chrome浏览器上运行以及WebStorm的使用
2016/09/27 Javascript
Bootstrap弹出框modal上层的输入框不能获得焦点问题的解决方法
2016/12/13 Javascript
canvas实现十二星座星空图
2017/02/14 Javascript
简单的网页广告特效实例
2017/08/19 Javascript
Angularjs使用过滤器完成排序功能
2017/09/20 Javascript
浅谈Angular HttpClient简单入门
2018/05/04 Javascript
jquery.pagination.js分页使用教程
2018/10/23 jQuery
弱类型语言javascript开发中的一些坑实例小结【变量、函数、数组、对象、作用域等】
2019/08/07 Javascript
微信小程序进入广告实现代码实例
2019/09/19 Javascript
HTML+JS实现“代码雨”效果源码(黑客帝国文字下落效果)
2020/03/17 Javascript
layui实现显示数据表格、搜索和修改功能示例
2020/06/03 Javascript
angular中的post请求处理示例详解
2020/06/30 Javascript
python中关于时间和日期函数的常用计算总结(time和datatime)
2013/03/08 Python
Python创建xml文件示例
2017/03/22 Python
python 3调用百度OCR API实现剪贴板文字识别
2018/09/04 Python
Python爬虫实现爬取百度百科词条功能实例
2019/04/05 Python
python脚本开机自启的实现方法
2019/06/28 Python
python协程gevent案例 爬取斗鱼图片过程解析
2019/08/27 Python
python3中利用filter函数输出小于某个数的所有回文数实例
2019/11/24 Python
python框架flask入门之环境搭建及开启调试
2020/06/07 Python
解决Keras 自定义层时遇到版本的问题
2020/06/16 Python
CSS3中的注音对齐属性ruby-align用法指南
2016/07/01 HTML / CSS
美津浓巴西官方网站:Mizuno巴西
2019/07/24 全球购物
Michael Kors英国官网:美国奢侈品品牌
2019/11/13 全球购物
机械设计及其自动化求职推荐信
2014/02/17 职场文书
小学教师自我鉴定范文
2014/03/20 职场文书
银行授权委托书样本
2014/10/13 职场文书
2014年图书管理员工作总结
2014/12/01 职场文书
财政局个人年终总结
2015/03/03 职场文书
2016毕业实习单位评语大全
2015/12/01 职场文书
剧场版《转生恶役只好拔除破灭旗标》公开最新视觉图 2023年上映
2022/04/02 日漫