JavaScript中的索引数组、关联数组和静态数组、动态数组讲解


Posted in Javascript onNovember 08, 2014

数组分类:

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

/* 索引数组,即通常情况下所说的数组 */

var ary1 = [1,3,5,8];

//按索引去取数组元素,从0开始(当然某些语言实现从1开始)

//索引实际上就是序数,一个整型数字

alert(ary1[0]);

alert(ary1[1]);

alert(ary1[2]);

alert(ary1[3]);

 

/* 关联数组,指以非序数类型为下标来存取的数组  python中称为字典 */

var ary2 = {};

//存取时,以非序数(数字),这里是字符串

ary2["one"] = 1;

ary2["two"] = 2;

ary2["thr"]  = 3;

ary2["fou"] = 4;

2、从对数据的存储分为静态数组、动态数组

// java中的静态数组

// 定义后数组的长度固定了不能改变,按索引取数组元素

Int[] ary1 = {1,3,6,9};

 

// java中的动态数组

// java中的ArrayList实现是以Array为基础的,这里说动态数组是广义的,不管采用什么方式实现。

List<Integer> ary2 = new ArrayList<Integer>();

ary2.add(1);//可以动态的添加元素,数组的长度也随着变化

ary2.add(3);

ary2.add(6);
/* js的数组属于动态数组 */

var ary = [];//定义一个数组,未指定长度

ary[0] = 1;//可以动态的添加元素

ary.push(3);

ary.push(5);

 

alert(ary.join(","));//输出1,3,5

js的数组同时属于索引数组和动态数组,因为本质上它就是一个js对象,体现着js动态语言特性。但js的索引数组并非“连续分配”内存的,因此索引方式并不会带来很高的效率。而java中的数组则是连续分配内存的。

Javascript 相关文章推荐
滚动经典最新话题[prototype框架]下编写
Oct 03 Javascript
javascript实现的网页局布刷新效果
Dec 01 Javascript
extjs 学习笔记 四 带分页的grid
Oct 20 Javascript
javascript学习笔记(八) js内置对象
Jun 19 Javascript
IE 下Enter提交表单存在重复提交问题的解决方法
May 04 Javascript
JS获取随机数函数可自定义最小值最大值
May 08 Javascript
Wireshark基本介绍和学习TCP三次握手
Aug 15 Javascript
JS实现弹出下载对话框及常见文件类型的下载
Jul 13 Javascript
Vue上传组件vue Simple Uploader的用法示例
Aug 25 Javascript
jQuery实现动态添加和删除input框代码实例
Mar 29 jQuery
JavaScript switch语句使用方法简介
Dec 30 Javascript
详解JVM系列之内存模型
Jun 10 Javascript
JavaScript函数模式详解
Nov 07 #Javascript
JavaScript代码复用模式详解
Nov 07 #Javascript
JavaScript中的style.cssText使用教程
Nov 06 #Javascript
JavaScript组合拼接字符串的效率对比测试
Nov 06 #Javascript
5个书写JavaScript代码的坏习惯,看看你中枪了没?
Nov 06 #Javascript
javascript解析json实例详解
Nov 05 #Javascript
JavaScript中发布/订阅模式的简单实例
Nov 05 #Javascript
You might like
3
2006/10/09 PHP
PHP数据类型之整数类型、浮点数的介绍
2013/04/28 PHP
探讨php中header的用法详解
2013/06/07 PHP
PHP导入导出Excel代码
2015/07/07 PHP
详解php的socket通信
2015/08/11 PHP
JQuery UI皮肤定制
2009/07/27 Javascript
JS拖动技术 关于setCapture使用
2010/12/09 Javascript
从阶乘函数对比Javascript和C#的异同
2012/05/31 Javascript
javascript记住用户名和登录密码(两种方式)
2015/08/04 Javascript
AngularJS使用指令增强标准表单元素功能
2016/07/01 Javascript
强大Vue.js组件浅析
2016/09/12 Javascript
bootstrapValidator bootstrap-select验证不可用的解决办法
2017/01/11 Javascript
原生JS实现九宫格抽奖效果
2017/04/01 Javascript
Bootstrap响应式导航由768px变成992px的实现代码
2017/06/15 Javascript
React组件中的this的具体使用
2018/02/28 Javascript
JavaScript对象原型链原理详解
2020/02/05 Javascript
解决父组件将子组件作为弹窗调用只执行一次created的问题
2020/07/24 Javascript
通过实例解析json与jsonp原理及使用方法
2020/09/27 Javascript
vue实现lodop打印功能的示例
2020/11/11 Javascript
[03:46]显微镜下的DOTA2第七期——满血与残血
2014/06/20 DOTA
python实现QQ空间自动点赞功能
2019/04/09 Python
解决Python列表字符不区分大小写的问题
2019/12/19 Python
pycharm不能运行.py文件的解决方法
2020/02/12 Python
python 读取yaml文件的两种方法(在unittest中使用)
2020/12/01 Python
Python第三方库安装缓慢的解决方法
2021/02/06 Python
HTML5 Canvas实现图片缩放、翻转、颜色渐变的代码示例
2016/02/28 HTML / CSS
Woods官网:加拿大最古老、最受尊敬的户外品牌之一
2020/09/12 全球购物
计算机应用专业学生的自我评价分享
2013/11/03 职场文书
《长征》教学反思
2014/04/27 职场文书
青春奉献演讲稿
2014/05/08 职场文书
违反交通法规检讨书
2014/09/10 职场文书
2014年自愿离婚协议书范本
2014/09/25 职场文书
开幕式邀请函
2015/01/31 职场文书
家长意见书
2015/06/04 职场文书
Python语言规范之Pylint的详细用法
2021/06/24 Python
JavaScript中document.activeELement焦点元素介绍
2021/11/27 Javascript