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 相关文章推荐
JavaScript this 深入理解
Jul 30 Javascript
JavaScript代码判断点击第几个按钮
Dec 13 Javascript
jQuery插件实现文件上传功能(支持拖拽)
Aug 27 Javascript
easyui tree带checkbox实现单选的简单实例
Nov 07 Javascript
vuex 使用文档小结篇
Jan 11 Javascript
Vuex的初探与实战小结
Nov 26 Javascript
JavaScript实现的鼠标跟随特效示例【2则实例】
Dec 22 Javascript
详解微信小程序开发之formId使用(模板消息)
Aug 27 Javascript
layui实现tab的添加拒绝重复的方法
Sep 04 Javascript
vue 父组件通过$refs获取子组件的值和方法详解
Nov 07 Javascript
javascript实现文字跑马灯效果
Jun 18 Javascript
vue或react项目生产环境去掉console.log的操作
Sep 02 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
Flash空降上海 化身大魔王接受挑战
2020/03/02 星际争霸
PHP 远程文件管理,可以给表格排序,遍历目录,时间排序
2009/08/07 PHP
非常好用的两个PHP函数 serialize()和unserialize()
2012/02/04 PHP
关于shopex同步ucenter的redirect问题,导致script不运行
2013/04/10 PHP
支持中文和其他编码的php截取字符串函数分享(截取中文字符串)
2014/03/13 PHP
php中将一个对象保存到Session中的方法
2015/03/13 PHP
PHP 二维数组和三维数组的过滤
2016/03/16 PHP
Laravel的throttle中间件失效问题解决方法
2016/10/09 PHP
零基础php编程好学吗
2019/10/11 PHP
javascript据option的value值快速设定初始的selected选项
2007/08/13 Javascript
JavaScript实现数组在指定位置插入若干元素的方法
2015/04/06 Javascript
Ext JS框架中日期函数的用法及日期选择控件的实现
2016/05/21 Javascript
JS控制HTML元素的显示和隐藏的两种方法
2016/09/27 Javascript
微信小程序 删除项目工程实现步骤
2016/11/10 Javascript
浅谈AngularJS中ng-class的使用方法
2016/11/11 Javascript
Angular 4.x中表单Reactive Forms详解
2017/04/25 Javascript
Angular4学习教程之HTML属性绑定的方法
2018/01/04 Javascript
vue的全局提示框组件实例代码
2018/02/26 Javascript
深入了解JavaScript代码覆盖
2019/06/13 Javascript
JavaScript实现轮播图片完整代码
2020/03/07 Javascript
详解vue 组件注册
2020/11/20 Vue.js
python安装教程 Pycharm安装详细教程
2017/05/02 Python
Python PyQt5实现的简易计算器功能示例
2017/08/23 Python
在PyTorch中Tensor的查找和筛选例子
2019/08/18 Python
Python网络编程之使用TCP方式传输文件操作示例
2019/11/01 Python
python进程间通信Queue工作过程详解
2019/11/01 Python
MoviePy简介及Python视频剪辑自动化
2020/12/18 Python
python中pdb模块实例用法
2021/01/15 Python
Skechers越南官方网站:来自美国的运动休闲品牌
2021/02/22 全球购物
市场营销求职信范文
2014/02/21 职场文书
2015年个人现实表现材料
2014/12/10 职场文书
2015年医生个人工作总结
2015/04/25 职场文书
2015年第31个教师节致辞
2015/07/31 职场文书
小学数学教学反思范文
2016/02/16 职场文书
2016大学生优秀志愿者事迹材料
2016/02/25 职场文书
记一次Mysql不走日期字段索引的原因小结
2021/10/24 MySQL