关于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中Ajax 缓存带来的影响的解决方法
May 19 Javascript
原生js实现shift/ctrl/alt按键的获取
Apr 08 Javascript
jquery选择器之属性过滤选择器详解
Jan 27 Javascript
JS的参数传递示例介绍
Feb 08 Javascript
JS中判断null、undefined与NaN的方法
Mar 24 Javascript
JS中创建函数的三种方式及区别
Mar 13 Javascript
jQuery焦点图轮播效果实现方法
Dec 19 Javascript
AngularJS中$injector、$rootScope和$scope的概念和关联关系深入分析
Jan 19 Javascript
JS简单实现父子窗口传值功能示例【未使用iframe框架】
Sep 20 Javascript
react实现菜单权限控制的方法
Dec 11 Javascript
JS数组进阶示例【数组的几种函数用法】
Jan 16 Javascript
js实现滑动滑块验证登录
Jul 24 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
php检测useragent版本示例
2014/03/24 PHP
php 无限级分类,超级简单的无限级分类,支持输出树状图
2014/06/29 PHP
PHP页面间传递值和保持值的方法
2016/08/24 PHP
PHP实现在数据库百万条数据中随机获取20条记录的方法
2017/04/19 PHP
php中输出json对象的值(实现方法)
2018/03/07 PHP
JavaScript中通过闭包解决只能取得包含函数中任何变量最后一个值的问题
2010/08/12 Javascript
原生js ActiveXObject获取execl里面的值
2013/11/01 Javascript
javascript创建和存储cookie示例
2014/01/07 Javascript
window.location 对象所包含的属性
2014/10/10 Javascript
jquery选择器简述
2015/08/31 Javascript
JS脚本实现动态给标签控件添加事件的方法
2016/06/02 Javascript
对js中回调函数的一些看法
2016/08/29 Javascript
微信小程序多张图片上传功能
2017/06/07 Javascript
webpack配置sass模块的加载的方法
2017/07/30 Javascript
Javascript(es2016) import和require用法和区别详解
2017/08/11 Javascript
使用Vue写一个datepicker的示例
2018/01/27 Javascript
jQuery实现的模仿雨滴下落动画效果
2018/12/11 jQuery
微信小程序返回上一页传参并刷新过程解析
2019/12/13 Javascript
node crawler如何添加promise支持
2020/02/01 Javascript
原生JS实现萤火虫效果
2020/03/07 Javascript
vue addRoutes路由动态加载操作
2020/08/04 Javascript
python基础教程之面向对象的一些概念
2014/08/29 Python
使用C语言来扩展Python程序和Zope服务器的教程
2015/04/14 Python
深入讲解Java编程中类的生命周期
2016/02/05 Python
对python PLT中的image和skimage处理图片方法详解
2019/01/10 Python
pytorch 归一化与反归一化实例
2019/12/31 Python
Python字典fromkeys()方法使用代码实例
2020/07/20 Python
Python如何定义有默认参数的函数
2020/08/10 Python
美国在线乐器和设备商店:Musician’s Friend
2018/07/06 全球购物
商务英语大学生职业生涯规划书范文
2014/01/01 职场文书
酒店大堂副理的职责范文
2014/02/13 职场文书
大学军训感言400字
2014/03/11 职场文书
工商局副局长个人对照检查材料
2014/09/25 职场文书
2014幼儿园大班工作总结
2014/11/10 职场文书
html form表单基础入门案例讲解
2021/07/21 HTML / CSS
Win11怎么启动任务管理器?Win11启动任务管理器的几种方法
2021/11/23 数码科技