Javascript的常规数组和关联数组对比小结


Posted in Javascript onMay 24, 2012

首先我们看看数组的分类:

从数组的下标分为索引数组、关联数组

/* 索引数组,即通常情况下所说的数组 */ 
var ary1 = [1,3,5,8]; 
//按索引去取数组元素,从0开始(当然某些语言实现从1开始),索引实际上就是序数,一个整型数字 
ary1[0]; 
ary1[1]; 
ary1[2]; 
ary1[3]; /* 关联数组,指以非序数类型为下标来存取的数组 python中称为字典 */ 
var ary2 = {}; //存取时,以非序数(数字),这里是字符串 
ary2["one"] = 1; 
ary2["two"] = 2; 
ary2["thr"] = 3; 
ary2["fou"] = 4;

问题:你可以如下测试:
alert(arry1.length); // 返回值为:4
alert(arry2.length); //返回值为:0

这是因为什么呢,因为js是非类型语言,所以js 的任何类型都是object,

比如var arr = [];
arr[0] = 1;
arr[1] = 2;
arr[2] = 3;
arr["s"] = 4;
此时你调用arr.s相当于是在调用arr这个对象的s属性,但是这是arr.length仍然是3。

总结:关联数组虽然可以用字符串作下标,但是这个下标是不支持参数传值的,换言之,你需要什么就取什么,听起来很智能,实际上你取值仍然需要你手动去写下标的。

Javascript 相关文章推荐
JavaScript 特殊字符
Apr 05 Javascript
IE 上下滚动展示模仿Marquee机制
Dec 20 Javascript
jQuery Clone Bug解决代码
Dec 22 Javascript
六款帮助你实现惊艳视差滚动效果的jQuery插件
Sep 14 Javascript
JS将数字转换成三位逗号分隔的样式(示例代码)
Feb 19 Javascript
关于JavaScript命名空间的一些心得
Jun 07 Javascript
js使用正则实现ReplaceAll全部替换的方法
Jul 18 Javascript
jquery 实现返回顶部功能
Nov 17 Javascript
JavaScript轮播图简单制作方法
Feb 20 Javascript
Angular 如何使用第三方库的方法
Apr 18 Javascript
vue中v-show和v-if的异同及v-show用法
Jun 06 Javascript
简单了解vue中的v-if和v-show的区别
Oct 08 Javascript
基于mootools插件实现遮罩层新手引导
May 24 #Javascript
jQuery 拖动层(在可视区域范围内)
May 24 #Javascript
jQuery 菜单随滚条改为以定位方式(固定要浏览器顶部)
May 24 #Javascript
获得所有表单值的JQuery实现代码[IE暂不支持]
May 24 #Javascript
js动态在form上插入enctype=multipart/form-data的问题
May 24 #Javascript
javascript中关于break,continue的特殊用法与介绍
May 24 #Javascript
网页编辑器ckeditor和ckfinder配置步骤分享
May 24 #Javascript
You might like
PHP中ADODB类详解
2008/03/25 PHP
php实现利用phpexcel导出数据
2013/08/24 PHP
php实现文件下载代码分享
2014/08/19 PHP
Linux下安装oracle客户端并配置php5.3
2014/10/12 PHP
PHP针对伪静态的注入总结【附asp与Python相关代码】
2017/08/01 PHP
Laravel框架下载,安装及路由操作图文详解
2019/12/04 PHP
服务端 VBScript 与 JScript 几个相同特性的写法 By shawl.qiu
2007/03/06 Javascript
javascript实现轮显新闻标题链接
2007/08/13 Javascript
JavaScript 学习笔记(十二) dom
2010/01/21 Javascript
JavaScript Math.ceil() 函数使用介绍
2013/12/11 Javascript
node.js中的fs.lchown方法使用说明
2014/12/16 Javascript
详细介绍jQuery.outerWidth() 函数具体用法
2015/07/20 Javascript
jquery实现表单验证简单实例演示
2015/11/23 Javascript
jQuery Validate表单验证插件 添加class属性形式的校验
2016/01/18 Javascript
javascript实现不同颜色Tab标签切换效果
2016/04/27 Javascript
JS实现简单的右下角弹出提示窗口完整实例
2016/06/21 Javascript
Javascript之面向对象--封装
2016/12/02 Javascript
微信小程序中button组件的边框设置的实例详解
2017/09/27 Javascript
微信小程序实现验证码获取倒计时效果
2018/02/08 Javascript
使用layui定义一个模块并使用的例子
2019/09/14 Javascript
基于JS实现操作成功之后自动跳转页面
2020/09/25 Javascript
关于JavaScript中异步/等待的用法与理解
2020/11/18 Javascript
[01:28:56]2014 DOTA2华西杯精英邀请赛 5 24 CIS VS DK
2014/05/26 DOTA
[01:24]DOTA2上海特锦赛OG战队抵达 专车接机入驻总统套房
2016/02/23 DOTA
[47:04]EG vs RNG 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/18 DOTA
Python实现简单的HttpServer服务器示例
2017/09/25 Python
python中xlrd模块的使用详解
2021/02/01 Python
使用CSS3的font-face字体嵌入样式的方法讲解
2016/05/13 HTML / CSS
经典的班主任推荐信
2013/10/28 职场文书
艺术学院毕业生求职信
2014/07/09 职场文书
医生爱岗敬业演讲稿
2014/08/26 职场文书
2015会计试用期工作总结
2014/12/12 职场文书
领导干部失职检讨书
2015/05/05 职场文书
大学生社会实践活动总结报告
2015/05/06 职场文书
毕业论文答辩演讲稿
2015/06/23 职场文书
文艺委员竞选稿
2015/11/19 职场文书