关于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 相关文章推荐
(仅IE下有效)关于checkbox 三态
May 12 Javascript
window.event.keyCode兼容IE和Firefox实现js代码
May 30 Javascript
javascript中的parseInt和parseFloat区别
Jul 12 Javascript
Javascript访问器属性实例分析
Dec 30 Javascript
关于预加载InstantClick的问题解决方法
Sep 12 Javascript
JS+HTML+CSS实现轮播效果
Nov 28 Javascript
使用axios实现上传图片进度条功能
Dec 21 Javascript
详解Vue的钩子函数(路由导航守卫、keep-alive、生命周期钩子)
Jul 24 Javascript
vue安装和使用scss及sass与scss的区别详解
Oct 15 Javascript
详解如何在Vue项目中导出Excel
Apr 19 Javascript
uni-app实现获取验证码倒计时功能
Nov 01 Javascript
Nest.js散列与加密实例详解
Feb 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 常见郁闷问题答解
2006/11/25 PHP
php+js实现图片的上传、裁剪、预览、提交示例
2013/08/27 PHP
两种php去除二维数组的重复项方法
2015/11/04 PHP
详解PHP的Yii框架的运行机制及其路由功能
2016/03/17 PHP
PHP基于timestamp和nonce实现的防止重放攻击方案分析
2019/07/26 PHP
Laravel 数据库加密及数据库表前缀配置方法
2019/10/10 PHP
PHP快速导出百万级数据到CSV或者EXCEL文件
2020/11/27 PHP
javascript innerHTML使用分析
2010/12/03 Javascript
JQury slideToggle闪烁问题及解决办法
2011/07/05 Javascript
基于Jquery插件开发之图片放大镜效果(仿淘宝)
2011/11/19 Javascript
jquery实现搜索框常见效果的方法
2015/01/22 Javascript
jquery 遍历数组 each 方法详解
2016/05/25 Javascript
BOM系列第三篇之定时器应用(时钟、倒计时、秒表和闹钟)
2016/08/17 Javascript
BootStrap 超链接变按钮的实现方法
2016/09/25 Javascript
Django使用多数据库的方法
2017/09/06 Javascript
JavaScript实现的原生态兼容IE6可调可控滚动文字功能详解
2017/09/19 Javascript
vue监听对象及对象属性问题
2018/08/20 Javascript
小程序从手动埋点到自动埋点的实现方法
2019/01/24 Javascript
js继承的这6种方式!(上)
2019/04/23 Javascript
vue 解决移动端弹出键盘导致页面fixed布局错乱的问题
2019/11/06 Javascript
JS使用Chrome浏览器实现调试线上代码
2020/07/23 Javascript
Pandas 对Dataframe结构排序的实现方法
2018/04/10 Python
Python多进程池 multiprocessing Pool用法示例
2018/09/07 Python
python正向最大匹配分词和逆向最大匹配分词的实例
2018/11/14 Python
Pandas GroupBy对象 索引与迭代方法
2018/11/16 Python
python Pexpect 实现输密码 scp 拷贝的方法
2019/01/03 Python
Django框架HttpResponse对象用法实例分析
2019/11/01 Python
基于python实现MQTT发布订阅过程原理解析
2020/07/27 Python
css3实现多个元素依次显示效果
2017/12/12 HTML / CSS
美国知名户外用品畅销中心:Sierra Trading Post
2016/07/19 全球购物
十八大闭幕感言
2014/01/22 职场文书
工程力学专业自荐信范文
2014/03/17 职场文书
婚礼秀策划方案
2014/05/19 职场文书
社区综治宣传月活动总结
2014/07/02 职场文书
2014年图书馆工作总结
2014/11/25 职场文书
《植物妈妈有办法》教学反思
2016/02/23 职场文书