执行部分
}
数组元素的访问:
arr[index],其中index表示索引即数组基数,从0开始,共有arr.length个元素.比如:
arr[0]访问第一个数组元素,arr[1]访问第二个数组元素....依次类推数组的操作方法:
先概览下下面的这些操作数组常用的方法(13个)
toString(),valueOf(),toLocalString(),join(),split(),slice(),concat(),
pop(),push(),shift(),unshift(),sort(),splice()
下面逐一分析这些方法的功能和用法.
toString(),valueOf(),toLocalString():
功能:
返回数组的全部元素
注:
数组名也可以返回整个数组
代码:
varm=["am","bm","cm"];//用括号声明一个数组对象
alert(m.toString());//toString()返回数组对象的所有内容,用逗号分割,即am,bm,cm
alert(m.valueOf());//valueOf()也返回数组对象的所有内容
alert(m.toLocaleString());//toLocaleString()也返回数组对象的所有内容,但有地区语言区别,暂不研究
alert(m);//数组名也返回数组对象的所有内容
join():
功能:
把数组各个项用某个字符(串)连接起来,但并不修改原来的数组
代码:
varm=["am","bm","cm"];//用括号声明一个数组对象
varn=m.join("---");//用---连接am,bm,cm.
alert(m.toString());//m并没有被修改,返回am,bm,cm
alert(n);//n是一个字符串,为am---bm---cm
split():
功能:
把一个字符串按某个字符(串)分割成一个数组,但不修改原字符串
代码:
varstr="Ilovemaomao,Iamcaolvchong";
vararr=str.split("o");//按字符o把str字符串分割成一个数组
alert(arr);//输出整个数组
slice():
返回某个位置开始(到某个位置结束)的数组部分,不修改原数组
代码:
1.varm=["am","bm","cm","dm","em","fm"];
2.varn=m.slice
(2);//返回第二个元素bm后面的元素,即cm,dm,em,fm
3.varq=m.slice(2,5);//返回第二个元素后到第五个元素,即cm,dm,em
4.alert(n);
5.alert(q);
数组对象的栈操作:
push():
数组末尾添加一个项
pop():
删除数组最后一个项
代码:
1.varm=["am","bm","cm","dm","em","fm"];
2.m.push("gm");//在数组末尾添加元素gm
alert(m);
m.pop();//删除数组最后一个元素gm
alert(m);
数组对象的队列操作:
unshift():
数组头添加一个项
shift():
删除数组第一个项
代码:
1.varm=["am","bm","cm","dm","em","fm"];
2.m.unshift("gm");//在数组第一个元素位置添加元素gm
3.alert(m);
4.m.shift();//删除数组第一个元素gm
5.alert(m);
sort():
数组按字符的ASCII码进行排序,修改数组对象
注:
即便是数字数组,也将转化为字符串来进行比较排序
代码:
1.varm=["am","fm","gm","bm","em","dm"];
2.m.sort();//按字母序排序
3.alert(m);
concat():
在数组尾添加元素,但不修改数组对象
代码:
1.varm=["am","bm"]
2.varn=m.concat("cm");//添加一项cm,并且赋予新数组对象
3.alert(m);//原数组没有被修改
4.alert(n);//输出新数组对象
splice():
在数组的任意位置进行添加,删除或者替换元素,直接修改数组对象
细节:
splice()有三个参数或三个以上参数,前两个是必须的,后面参数是可选的
进行添加:
splice(起始项,0,添加项)
进行删除:
splice(起始项,要删除的项个数)
进行替换:
splice(起始项,替换个数,替换项)这个其实是添加删除的共同结果
代码:
1.varm=["am","bm"]
2.m.splice(1,0,"fm","sm");//在第一项后面添加fm和sm,返回am,fm,sm,bm
3.alert(m);
4.m.splice(2,1);//删除第二项后面一项(即第三项sm,返回am,fm,bm)
5.alert(m);
6.m.splice(2,1,"mm");//替换第二项后面一项(即第三项,返回am,fm,mm)
7.alert(m);
从一个数组中移除一个或多个元素,如果必要,在所移除元素的位置上插入新元素,返回所移除的元素。
arrayObj.splice(start,deleteCount,[item1[,item2[,...[,itemN]]]])
参数
arrayObj
必选项。
一个Array对象。
start
必选项。
指定从数组中移除元素的开始位置,这个位置是从0开始计算的。
deleteCount
必选项。
要移除的元素的个数。
item1,item2,...,itemN
必选项。
要在所移除元素的位置上插入的新元素。
说明
splice方法可以移除从start位置开始的指定个数的元素并插入新元素,从而修改arrayObj。
返回值是一个由所移除的元素组成的新Array对象。
示例:
scriptlanguage="javascript">
functiontest()
{
//vara=[1,2,3];
//alert(a);
vara=[1,2,3];
a.splice(1,1,4,6,7,8)//移除第二个,然后在第一个后插入4,6,7,8,返回:
1,4,6,7,8,3
alert(a);
a.splice(0,1,3)//移除第一个,然后在第一个前插入3,返回:
3,4,6,7,8,3
alert(a);
a.splice(2,0,5)//在第三个元素插入一个5,返回:
3,4,5,6,7,8
alert(a);
a.splice(-1,1)//移动最后一位,类似shift方法,返回:
3,4,5,6,7,8
alert(a);
}
JS中一些常用对象属性和方法
B.1anchor对象
使用标记创建的HTML描点能被一个链接作为目标如果锚点包括HREF=特性,则它也是一个链接对象。
anchor对象是document对象的一个属性,它本身没有属性方法或者事件处理程序。
标记创建(该属性本身也是一个对象)
anchorsarray列出文档锚点对象的数组(<ANAME=>)(该属性本身也是一个对象)
bgColor文档的背景颜色(BGCOLOR)
cookie存储于cookie.txt文件内的一段信息,它是该文档对象的一个属性
fgColor文档的文本颜色(<BODY>标记里的TEXT特性)
form文档中的一个窗体(<FORM>)(该属性本身也是一个对象)
formsanay按照其出现在文档中的顺序列出窗体对象的一个数组(该属性本身也是一个对象)
lastModified文档最后的修改日期
linkColor文档的链接的颜色,即<BODY>标记中的LINK特性(链接到用户没有观察到的文档)
link文档中的一个<AHREF=>标记(该属性本身也是一个对象)
linksarray文档中link对象的一个数组,按照它们出现在文档中的顺序排列(该属性本身也是一个对象)
location当前显示文档的URL。
用户不能改变document.location(因为这是当前显示文档的位置)。
但是,可以改变window.location(用其它文档取代当前文档)window.location本身也是一个对象,而document.location不是对象
referrer包含链接的文档的URL,用户单击该链接可到达当前文档
title文档的标题(<TITLE>)
vlinkColor指向用户已观察过的文档的链接文本颜色,即<BODY>标记的VLINK特性
方法
clear清除指定文档的内容
close关闭文档流
open打开文档流
write把文本写入文档
writeln把文本写入文档,并以换行符结尾
B.2anchors数组
anchors数组是document对象的一个属性,是文档内所有anchor对象的一个列表如果anchor也是一个link(链接),则它会同时出现在anchors和links数组中。
属性
length文档内的锚点个数
B.3array对象
array对象是NetscapeNavlgator3.0beta3中引入的一个新的对象,因而,它不能在Netscape2.0中使用它是一个内置对象,而不是其它对象的属性。
属性
length数组中的值个数
B.4button对象
它是form对象的一个属性,使用<INPUTTYPE="BUTTON">标记来创建。
属性
nameHTML标记中的NAME=特性
valueHTML标记中的VALUE=特性
方法
click模拟鼠标单击一按钮
事件处理程序
Onclick
B.5checkbox对象
它是form对象的一个属性,使用<INPUTTYPE="CHECKBOX">标记来创建。
属性
checked复选框的选择状态
defaultChecked标记的CHECKED=特性
name标记的NAME=特性
value标记的VALUE=特性
方法
click模拟鼠标单击按钮
事件处理程序
onclick
B.6Date对象
它是一个内置对象——而不是其它对象的属性,允许用户执行各种使用日期和时间的过程。
方法
getDate()查看Date对象并返回日期
getDay()返回星期几
getHours()返回小时数
getMinutes()返回分钟数
ge