数组的概念:引用类型的对象。
本质:内存中存储多个数据的空间,再取个名字。
数据结构:数据结构不同,擅长的操作不同。
数组特点:便于数据的查找与维护。
数组的创建:
方法1:var 数组名=【元素1,元素2,元素3…元素n】;
注意:可以创建空数组,建议创建同时赋值!
方式2:var 数组名=new Array();
数组的使用:
下标:每个元素都有一个对于的房间号,默认从0开始,逐一递增。
元素:其实就是数组中保存的一个个数据,可以是各种数据类型。
访问数组中已有的元素:数组中元素的使用与普通变量完全一样。
使用数组名【下标】:获取对应下标的数据。
使用数组名【下标】=新值:将新值替换原值。
数组的属性:
.length属性:记录着数组中理论上元素的个数。实际保存的是数组中最 后一个元素下标+1。length的值与实际元素的个数不一定相同。
注意:length不能脱离数组单独使用,自动维护不需要手动修改。
常见操作:
获取数组中最后一个元素:arr【arr.length-1】;
获取元素中倒数第n个元素:arr【arr.length-n】;
在数组的最后追究一个新元素:arr.【arr.length】=新元素;
修改数组的length属性,可以达到删除元素的目的!
删除数组中最后一个元素:arr.length–;
删除数组中最后n个元素:arr.length-=n;
关于数组的本质:引用类型的对象
输出方式:dir:输出数据的结构及其内容,而不是立刻输出,点击小三角后才在内存中输出正确的内容!
遍历:依次查找数组中每个元素,并执行相同操作!
for (var i=0;i<=arr.length;i++) {
arr[i];
}
数组的分类:
索引数组:下标为数字的数组
关联数组:下标自定义的值
创建数组:var arr=【】;//创建空数组;arr【“下标名”】;=值;向空数组添加新元素,并自定义下标名。
使用数组:元素与普通数组一样,用法同普通数组。取值:arr【下标名】 赋值:arr【下标名】=新值;
注意:关联数组的length属性失效,永远为0;
遍历:for in循环遍历关联数组!
for(var key in arr) {
arr[key];
}
注释:key:用于每次循环保存临时变量下标的变量;in:关键词;arr:需要遍历的数组的数组名
总结:数组的特点:便于数据的维护和查找!
关联数组 vs 索引数组:关联数组:查找更快,效率更高。原因:直接定位元素,查找速度不受元素个数影响;索引数组:相对较慢!原因:只能遍历查找,查找效率受元素个数,位置影响!