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的trim,ltrim,rtrim自定义函数
Sep 21 Javascript
一个关于jqGrid使用的小例子(行按钮)
Nov 04 Javascript
window.location 对象所包含的属性
Oct 10 Javascript
利用VUE框架,实现列表分页功能示例代码
Jan 12 Javascript
JavaScript表单验证的两种实现方法
Feb 11 Javascript
javascript 面向对象function详解及实例代码
Feb 28 Javascript
JavaScript实现反转字符串的方法详解
Apr 27 Javascript
浅谈React深度编程之受控组件与非受控组件
Dec 26 Javascript
讲解vue-router之什么是动态路由
May 28 Javascript
Vue中使用matomo进行访问流量统计的实现
Nov 05 Javascript
最全vue的vue-amap使用高德地图插件画多边形范围的示例代码
Jul 17 Javascript
ES6学习教程之Promise用法详解
Nov 22 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 json_encode值中大括号与花括号区别
2013/09/30 PHP
php实现网页缓存的工具类分享
2015/07/14 PHP
Laravel框架Eloquent ORM修改数据操作示例
2019/12/03 PHP
[原创]提供复制本站内容时出现,该文章转自脚本之家等字样的js代码
2007/03/27 Javascript
javascript fullscreen全屏实现代码
2009/04/09 Javascript
一些mootools的学习资源
2010/02/07 Javascript
javascript继承之为什么要继承
2012/11/10 Javascript
js日期、星座的级联显示代码
2014/01/23 Javascript
js原型继承的两种方法对比介绍
2014/03/30 Javascript
JavaScript中字面量与函数的基本使用知识
2015/10/20 Javascript
通过点击jqgrid表格弹出需要的表格数据
2015/12/02 Javascript
jQuery使用$.ajax提交表单完整实例
2015/12/11 Javascript
js实现小窗口拖拽效果
2016/12/03 Javascript
bootstrap提示标签、提示框实现代码
2016/12/28 Javascript
老生常谈js-react组件生命周期
2017/05/02 Javascript
JS中用EL表达式获取上下文参数值的方法
2018/03/28 Javascript
新年快乐! javascript实现超级炫酷的3D烟花特效
2019/01/30 Javascript
vuex实现的简单购物车功能示例
2019/02/13 Javascript
node.js 基于cheerio的爬虫工具的实现(需要登录权限的爬虫工具)
2019/04/10 Javascript
解决iview table组件里的 固定列 表格不自适应的问题
2020/11/13 Javascript
[30:37]【全国守擂赛】第三周擂主赛 Dark Knight vs. Leopard Gaming
2020/05/04 DOTA
pyqt4教程之messagebox使用示例分享
2014/03/07 Python
python爬虫框架scrapy实现模拟登录操作示例
2018/08/02 Python
python opencv人脸检测提取及保存方法
2018/08/03 Python
使用Python编写Prometheus监控的方法
2018/10/15 Python
python pygame实现五子棋小游戏
2020/10/26 Python
Pytorch mask_select 函数的用法详解
2020/02/18 Python
Python Handler处理器和自定义Opener原理详解
2020/03/05 Python
python绘制趋势图的示例
2020/09/17 Python
Python日志器使用方法及原理解析
2020/09/27 Python
CSS3动画特效在活动页中的应用
2020/01/21 HTML / CSS
韩国三星旗下的一家超市连锁店:Home Plus
2016/07/30 全球购物
用C语言实现文件读写操作
2013/10/27 面试题
教师求职自荐书
2014/06/14 职场文书
国家领导干部党的群众路线教育实践活动批评与自我批评材料
2014/09/23 职场文书
Python jiaba库的使用详解
2021/11/23 Python