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小游戏实现代码
Aug 19 Javascript
JQuery异步加载无限下拉框级联功能实现示例
Feb 19 Javascript
Javascript实现多彩雪花从天降散落效果的方法
Feb 02 Javascript
Bootstrap插件全集
Jul 18 Javascript
jquery实现轮播图效果
Feb 13 Javascript
字太多用...代替的方法(两种)
Mar 15 Javascript
使用vue构建移动应用实战代码
Aug 02 Javascript
Vuerouter的beforeEach与afterEach钩子函数的区别
Dec 26 Javascript
JS实现在线ps功能详解
Jul 31 Javascript
微信小程序实现轨迹回放的示例代码
Dec 13 Javascript
vue 接口请求地址前缀本地开发和线上开发设置方式
Aug 13 Javascript
javascript前端实现多视频上传
Dec 13 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之第三天
2006/10/09 PHP
第五章 php数组操作
2011/12/30 PHP
PHP APC配置文件2套和参数详解
2014/06/11 PHP
PHP实现的迪科斯彻(Dijkstra)最短路径算法实例
2017/09/16 PHP
PHP多维数组排序array详解
2017/11/21 PHP
PHP MVC框架中类的自动加载机制实例分析
2019/09/18 PHP
JQUERY简单按钮轮换选中效果实现方法
2015/05/07 Javascript
JavaScript DOM 学习总结(五)
2015/11/24 Javascript
探讨JavaScript标签位置的存放与功能有无关系
2016/01/15 Javascript
JS中创建函数的三种方式及区别
2016/03/13 Javascript
浅谈jquery点击label触发2次的问题
2016/06/12 Javascript
EasyUI创建对话框的两种方式
2016/08/23 Javascript
浅析如何利用angular结合translate为项目实现国际化
2016/12/08 Javascript
bootstrap中添加额外的图标实例代码
2017/02/15 Javascript
JS实现禁止高频率连续点击的方法【基于ES6语法】
2017/04/25 Javascript
如何理解Vue的render函数的具体用法
2017/08/30 Javascript
js实现图片粘贴上传到服务器并展示的实例
2017/11/08 Javascript
uni-app之APP和小程序微信授权方法
2019/05/09 Javascript
js实现拖拽元素选择和删除
2020/08/25 Javascript
[01:38]DOTA2辉夜杯 欢乐的观众现场采访
2015/12/26 DOTA
[34:27]DOTA2上海特级锦标赛B组败者赛 VG VS Spirit第一局
2016/02/26 DOTA
python图像处理之反色实现方法
2015/05/30 Python
解决uWSGI的编码问题详解
2017/03/24 Python
用python 批量更改图像尺寸到统一大小的方法
2018/03/31 Python
Python基于多线程操作数据库相关问题分析
2018/07/11 Python
CentOS7安装Python3的教程详解
2019/04/10 Python
PyTorch使用cpu加载模型运算方式
2020/01/13 Python
Python偏函数Partial function使用方法实例详解
2020/06/17 Python
删除pycharm鼠标右键快捷键打开项目的操作
2021/01/16 Python
针对HTML5的Web Worker使用攻略
2015/07/12 HTML / CSS
监察建议书范文
2014/03/12 职场文书
敬业奉献模范事迹材料
2014/12/24 职场文书
2016党员三严三实心得体会
2016/01/15 职场文书
导游词之江苏同里古镇
2019/11/18 职场文书
nginx前后端同域名配置的方法实现
2021/03/31 Servers
css3 选择器
2022/05/11 HTML / CSS