- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
认识Javascript数组认识Javascript数组
认识Javascript数组
转载:/tech/web/2009/6958.asp
1.认识数组
数组就是某类数据的集合,数据类型可以是整型、字符串、甚至是对象Javascript不支持多维数组,但是因为数组里面可以包含对象(数组也是一个对象),所以数组可以通过相互嵌套实现类似多维数组的功能
1.1 定义数组
声明有10个元素的数组
var a = new Array(10);
此时为a已经开辟了内存空间,包含10个元素,用数组名称加 [下标] 来调用,例如 a[2] 但此时元素并未初始化,调用将返回 undefined
以下代码定义了个可变数组,并进行赋值
var a = new Array();a[0] = 10;a[1] = aaa;a[2] = 12.6;
上面提过了,数组里面可以放对象,例如下面代码
var a = new Array();a[0] = true;a[1] = document.getElementById(text);a[2] = {x:11, y:22};a[3] = new Array();
数组可以实例化的时候直接赋值,例如
var a = new Array(1, 2, 3, 4, 5);var b = [1, 2, 3, 4, 5];
a 和 b 都是数组,只不过b用了隐性声明,创建了另一个实例,此时如果用alert(a==b)将弹出false
1.2 多维数组
其实Javascript是不支持多维数组的,在asp里面可以用 dim a(10,3)来定义多维数组,在Javascript里面,如果用 var a = new Array(10,3) 将报错但是之前说过,数组里面可以包含对象,所以可以把数组里面的某个元素再声明为数组,例如
var a = new Array();a[0] = new Array();a[0][0] = 1;alert(a[0][0]); //弹出 1
声明的时候赋值
var a = new Array([1,2,3], [4,5,6], [7,8,9]);var b = [[1,2,3], [4,5,6], [7,8,9]];
效果一样,a采用常规实例化,b是隐性声明,结果都是生成一个多维数组
1.3 Array literals
这个还真不知中文怎么叫,文字数组?说到数组,不得不说到Array Literals,数组其实是特殊的对象,对象有特有属性和方法,通过 对象名.属性 、对象.方法() 来取值和调用,而数组是通过下标来取值,Array Literals跟数组有很多相似,都是某数据类型的集合,但是Array Literals从根本来说,是个对象,声明和调用,跟数组是有区别
var aa = new Object();aa.x = cat;aa.y = sunny;alert(aa.x); //弹出cat
创建一个简单的对象,一般调用是通过aa.x,而如果当成Array literals的话,用alert(aa[“x”])一样会弹出cat
var a = {x:cat, y:sunny};alert(a[y]); //弹出sunny
这是另一种创建对象的方法,结果是一样的
2.数组元素的操作
上面已经说过,可以通过 数组[下标] 来读写元素
下标的范围是 0 – (23(上标2) -1),当下标是负数、浮点甚至布尔值的时候,数组会自动转换为对象类型,例如
var b = new Array();b[2.2] = XXXXX;alert(b[2.2]); //- XXXXX
此时相当于b[“2.2”] = “XXXXX”
2.1数组的循环
var a = [1,2,3,4,5,6];for(var i =0; ia.length; i++){alert(a[i]);}
这是最常用的,历遍数组,代码将依次弹出1至6
还有一种常用的
var a = [1,2,3,4,5,6];for(var e in a){alert(e);}
还是依次弹出1至6,for…in是历遍对象(数组是特殊的对象)对象,用在数组上,因为数组没有属性名,所以直接输出值,这结构语句用在对象上,例如下面
var a = {x:1,y:2,z:3};for(var e in a){alert(e + : + a[e]);}
此时e取到的是属性名,即 x、y、x,而要取得值,则采用 数组名[属性],所以 a[e] 等同于 a[“x”]、a[“y”]、a[“z”]
2.2数组常用函数
concat
在现有数组后面追加数组,并返回新数组,不影响现有数组
var a
您可能关注的文档
- 西安交通大学805传热学(樊战军)西安交通大学805传热学(樊战军).doc
- 西安启功电气高压软起动装置说明书西安启功电气高压软起动装置说明书.pdf
- 西安交通大学2016年初试成绩基本要求西安交通大学2016年初试成绩基本要求.pdf
- 西安人的春节,花灯和庙会一个都不能少,最全信息都在这里了西安人的春节,花灯和庙会一个都不能少,最全信息都在这里了.pdf
- 西安交通大学2016年硕士研究生招生目录汇总_西安交大考研网西安交通大学2016年硕士研究生招生目录汇总_西安交大考研网.pdf
- 西安交通大学硕士论文排版、编辑、打印、送审全面指导西安交通大学硕士论文排版、编辑、打印、送审全面指导.ppt
- 西安外国语大学TUFC春季英澳新硕士预科简章西安外国语大学TUFC春季英澳新硕士预科简章.doc
- 西安工业大学附中2015年小升初综合测试卷西安工业大学附中2015年小升初综合测试卷.pdf
- 西安工程大学学生学籍管理规定西安工程大学学生学籍管理规定.doc
- 西安市公租房建设管理有限责任公司薪酬管理制度西安市公租房建设管理有限责任公司薪酬管理制度.ppt
文档评论(0)