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 相关文章推荐
LBS blog sql注射漏洞[All version]-官方已有补丁
Aug 26 Javascript
JQuery里选择超链接的实现代码
May 22 Javascript
打印json对象的内容及JSON.stringify函数应用
Mar 29 Javascript
js跑马灯代码(自写)
Apr 17 Javascript
javascript使用 concat 方法对数组进行合并的方法
Sep 08 Javascript
php简单数据库操作类的封装
Jun 08 Javascript
Node.js实现文件上传的示例
Jun 28 Javascript
JS实现div模块的截图并下载功能
Oct 17 Javascript
JS基于for语句编写的九九乘法表示例
Jan 04 Javascript
vue 实现数字滚动增加效果的实例代码
Jul 06 Javascript
微信小程序设置全局请求URL及封装wx.request请求操作示例
Apr 02 Javascript
使用vue自定义指令开发表单验证插件validate.js
May 23 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中addslashes函数与sql防注入
2014/11/17 PHP
PHP中使用数组指针函数操作数组示例
2014/11/19 PHP
thinkphp5框架实现数据库读取的数据转换成json格式示例
2019/10/10 PHP
详解Laravel设置多态关系模型别名的方式
2019/10/17 PHP
ExtJS4 Grid改变单元格背景颜色及Column render学习
2013/02/06 Javascript
jquery监听div内容的变化具体实现思路
2013/11/04 Javascript
javascript中的循环语句for语句深入理解
2014/04/04 Javascript
jQuery基于ajax()使用serialize()提交form数据的方法
2015/12/08 Javascript
node.js中module.exports与exports用法上的区别
2016/09/02 Javascript
jQuery+CSS3实现四种应用广泛的导航条制作实例详解
2016/09/17 Javascript
js实现选项卡内容切换以及折叠和展开效果【推荐】
2017/01/08 Javascript
微信小程序 picker 组件详解及简单实例
2017/01/10 Javascript
深入了解js原型模式
2019/05/30 Javascript
使用p5.js临摹动态图片
2019/11/04 Javascript
vue插槽slot的简单理解与用法实例分析
2020/03/14 Javascript
[02:15]2014DOTA2国际邀请赛 专访LGD.lin小兔子是大腿
2014/07/14 DOTA
使用Python的package机制如何简化utils包设计详解
2017/12/11 Python
matplotlib绘制多个子图(subplot)的方法
2019/12/03 Python
pytorch ImageFolder的覆写实例
2020/02/20 Python
django美化后台django-suit的安装配置操作
2020/07/12 Python
Python常用base64 md5 aes des crc32加密解密方法汇总
2020/11/06 Python
法国时尚品牌乐都特瑞士站:La Redoute瑞士
2016/09/05 全球购物
全球游戏Keys和卡片市场:GamesDeal
2018/03/28 全球购物
美国校服网上商店:French Toast
2019/10/08 全球购物
JAVA代码查错题
2014/10/10 面试题
人事部主管岗位职责
2013/12/26 职场文书
鲜花方阵解说词
2014/02/13 职场文书
母亲节演讲稿
2014/05/27 职场文书
公司任命书模板
2014/06/06 职场文书
大学生赌博检讨书
2014/09/22 职场文书
幼儿园园长安全责任书
2015/05/08 职场文书
小学数学教学随笔
2015/08/14 职场文书
《辉夜大小姐想让我告白》第三季正式预告
2022/03/20 日漫
Python借助with语句实现代码段只执行有限次
2022/03/23 Python
Spring Boot DevTools 全局配置学习指南
2022/03/31 Java/Android
python对文档中元素删除,替换操作
2022/04/02 Python