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 用cloneNode方法克隆节点的代码
Oct 15 Javascript
jquery 关于event.target使用的几点说明介绍
Apr 26 Javascript
HTML5之lang属性与dir属性的详解
Jun 19 Javascript
JS 添加千分位与去掉千分位的示例
Jul 11 Javascript
如何解决Jquery库及其他库之间的$命名冲突
Sep 15 Javascript
jquery分页对象使用示例
Apr 01 Javascript
10条建议帮助你创建更好的jQuery插件
May 18 Javascript
node.js Sequelize实现单实例字段或批量自增、自减
Dec 08 Javascript
浅谈Emergence.js 检测元素可见性的 js 插件
Nov 18 Javascript
jfinal与bootstrap的登出实战详解
Nov 27 Javascript
原生JS与CSS实现软件卸载对话框功能
Dec 05 Javascript
JavaScript中this的学习笔记及用法整理
Feb 17 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
用PHP+MySql编写聊天室
2006/10/09 PHP
生成静态页面的php函数,php爱好者站推荐
2007/03/19 PHP
海河写的 Discuz论坛帖子调用js的php代码
2007/08/23 PHP
如何使用PHP计算上一个月的今天
2013/05/23 PHP
PHP+Mysql+jQuery中国地图区域数据统计实例讲解
2015/10/10 PHP
php实现的顺序线性表示例
2019/05/04 PHP
javascript document.execCommand() 常用解析
2009/12/14 Javascript
web的各种前端打印方法之jquery打印插件PrintArea实现网页打印
2013/01/09 Javascript
设为首页加入收藏兼容360/火狐/谷歌/IE等主流浏览器的代码
2013/03/26 Javascript
javascript中常用编程知识
2013/04/08 Javascript
js实现表格字段排序
2014/02/19 Javascript
javascript 10进制和62进制的相互转换
2014/07/31 Javascript
nodejs爬虫抓取数据乱码问题总结
2015/07/03 NodeJs
jquery实现ajax提交表单信息的简单方法(推荐)
2016/08/24 Javascript
实例解析js中try、catch、finally的执行规则
2017/02/24 Javascript
react实现pure render时bind(this)隐患需注意!
2017/03/09 Javascript
实例教学如何写vue插件
2017/11/30 Javascript
Nodejs下使用gm圆形裁剪并合成图片的示例
2018/02/22 NodeJs
详解Vuex下Store的模块化拆分实践
2019/07/31 Javascript
在vue中使用axios实现post方式获取二进制流下载文件(实例代码)
2019/12/16 Javascript
Vue Router的手写实现方法实现
2020/03/02 Javascript
TensorFlow高效读取数据的方法示例
2018/02/06 Python
python中实现将多个print输出合成一个数组
2018/04/19 Python
Python面向对象之静态属性、类方法与静态方法分析
2018/08/24 Python
python判断文件是否存在,不存在就创建一个的实例
2019/02/18 Python
python定时按日期备份MySQL数据并压缩
2019/04/19 Python
matplotlib实现显示伪彩色图像及色度条
2019/12/07 Python
Python利用 utf-8-sig 编码格式解决写入 csv 文件乱码问题
2020/02/21 Python
Python生成器常见问题及解决方案
2020/03/21 Python
意大利综合购物网站:Giordano Shop
2016/10/21 全球购物
大学生的自我鉴定范文
2014/01/21 职场文书
产品质量承诺书
2014/03/27 职场文书
我的中国梦演讲稿400字
2014/08/19 职场文书
课堂打架检讨书200字
2014/11/21 职场文书
赡养老人协议书范本
2015/08/06 职场文书
学校中层领导培训心得体会
2016/01/11 职场文书