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 相关文章推荐
js之WEB开发调试利器:Firebug 下载
Jan 13 Javascript
jQuery 入门级学习笔记及源码
Jan 22 Javascript
js 上传图片预览问题
Dec 06 Javascript
js+html+css实现鼠标移动div实例
Jan 30 Javascript
JS中的构造函数详细解析
Mar 10 Javascript
javascript中AJAX用法实例分析
Jan 30 Javascript
利用jQuery及AJAX技术定时更新GridView的某一列数据
Dec 04 Javascript
jQuery+formdata实现上传进度特效遇到的问题
Feb 24 Javascript
用JavaScript动态建立或增加CSS样式表的实现方法
May 20 Javascript
Angularjs过滤器使用详解
May 25 Javascript
基于HTML+CSS+JS实现增加删除修改tab导航特效代码
Aug 05 Javascript
如何vue使用el-table遍历循环表头和表体数据
Apr 26 Vue.js
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
用PHP+MySQL搭建聊天室功能实例代码
2012/08/20 PHP
input file获得文件根目录简单实现
2013/04/26 PHP
php Calender(日历)代码分享
2014/01/03 PHP
thinkphp使用phpmailer发送邮件的方法
2014/11/24 PHP
基于PHP+jQuery+MySql实现红蓝(顶踩)投票代码
2015/08/25 PHP
PHP实现合并两个排序链表的方法
2018/01/19 PHP
PHP校验15位和18位身份证号的类封装
2018/11/07 PHP
PHP从零开始打造自己的MVC框架之类的自动加载实现方法详解
2019/06/03 PHP
php的无刷新操作实现方法分析
2020/02/28 PHP
js获取电脑分辨率的思路及操作
2013/11/22 Javascript
Javascript实现多彩雪花从天降散落效果的方法
2015/02/02 Javascript
jQuery幻灯片特效代码分享--鼠标滑过按钮时切换(2)
2020/11/18 Javascript
Bootstrap每天必学之标签与徽章
2015/11/27 Javascript
js接收并转化Java中的数组对象的方法
2016/08/11 Javascript
MvcPager分页控件 适用于Bootstrap
2017/06/03 Javascript
详解JQuery基础动画操作
2019/04/12 jQuery
JS原生瀑布流效果实现
2019/04/26 Javascript
python 合并文件的具体实例
2013/08/08 Python
Windows下Anaconda的安装和简单使用方法
2018/01/04 Python
pandas数据处理基础之筛选指定行或者指定列的数据
2018/05/03 Python
python pandas 对series和dataframe的重置索引reindex方法
2018/06/07 Python
Python整数对象实现原理详解
2019/07/01 Python
Python学习笔记之字符串和字符串方法实例详解
2019/08/22 Python
python画蝴蝶曲线图的实例
2019/11/21 Python
如何在mac下配置python虚拟环境
2020/07/06 Python
13个Pandas实用技巧,助你提高开发效率
2020/08/19 Python
python使用yaml 管理selenium元素的示例
2020/12/01 Python
pycharm 如何取消连按两下shift出现的全局搜索
2021/01/15 Python
Lookfantastic西班牙官网:英国知名美妆购物网站
2018/06/13 全球购物
电子商务专业毕业生工作推荐信
2013/11/17 职场文书
个人租房协议书范本
2014/09/30 职场文书
2014旅游局党组书记党建工作汇报材料
2014/11/02 职场文书
2015教师年度考核评语
2015/03/25 职场文书
Windows中Redis安装配置流程并实现远程访问功能
2021/06/07 Redis
Nginx图片服务器配置之后图片访问404的问题解决
2022/03/21 Servers
Python OpenCV之常用滤波器使用详解
2022/04/07 Python