本文将简单介绍javascript中一些常用对象的属性和方法,以及几个有用的系统函数。
一、串方法
javascript有强大的串处理功能,有了这些串方法,才能编写出丰富多彩的网页。在这一部分里,我们将介绍到如何使用与串对象有关的方法和属性。
1.串对象的length属性
串对象仅有一个属性length,这个属性值表示这个串所包括字符的相对数目。语法为: stringname.length
2.串对象的方法
javascript提供了多个串方法以帮助控制显示信息。串方法可以分为几个大类,如属性方法、导航方法等等。下面我们将分类介绍。
(1)属性方法 串的属性方法指定了普通文本显示在屏幕上的方式。它提供了一种理想的方式使主页变得更有吸引力。
blink() blink()方法引起文本闪烁,语法形式如下: string.blink();
bold() bold()方法使串变为粗体。语法形式如下: string.bold();
fontcolor() fontcolor()方法可以改变单个串的颜色,或者在每次重新装入页面或事件发生时,改变颜色。同样,这个方法也有一个相对应的html标识-- fontcolor()的语法是 string.fontcolor(color); 在这里,color是一种颜色的合法表示。
italics() italics()方法把串变为斜体,以同其余文字区分开来,italics() 的语法如下: string.italics();
(2)大小写方法 javascript严格区分字母的大小写。为了方便地比较两个串,就要把它们都转化为大写或小写。串对象的大小写方法就支持在大小写之间转换。
tolowercase() tolowercase()方法把一个给定的串中每个字符转变成小写状态。语法形式如下: string=stringvalue.tolowercase();
touppercase() 与tolowercase()方法相反是touppercase()方法,它把一个给定串转变成大写字符串。 string=stringvalue.touppercase();
(3)操作方法 操作方法提供了许多种在一个文本串内查找字符串的方法,其中包括charat()、indexo f()、lastindexof()和substring()四种方法。我们可以使用这些方法格式化和操作用户输入的串变量,其中charat()和 substring()两种方法从一个串中抽取一个或多个字符,剩下的两个方法返回待查找值的第一个字符在串中出现位置的数字值。
charat() charat()方法从一个给定串中返回指定位置的字符。它的使用方法如下: string.charat(index); 其中index是一个在0和小于串长度之间的一个数(串长度可以通过length属性得到),
substring() substring()方法从一个大串中返回它的一个子串。它的语法形式如下: string.substring(indexa,indexb) indexa和indexb两者都是在0和串长度之间的数字值。它们是串的两个下标。
indexof() indexof()方法返回在一个长串中与指定的串匹配的子串的位置。它从左到右地查找给定的串,语法形式如下: string.indexof(searchvalue,[fromindex]); 其中string是indexof()要在其中查找searchvalue的串,而searc hvalue是任何想要查找的字符或子串。 fromindex是一个可选项,它指定查找开始的位置。fromindex的范围与charat()和subs tring()相似(0到length-1)。它不能大于或等于length,如果没有指定fromindex,该方法认为其缺省地?并查找整个串。 indexof()的返回值是searchvalue首次出现的第一个字符的偏移量(从串的开头算起)。即使指定了fromindex,该返回值仍是相对于串的开头的(有可能在前面一些的地方出现的se archvalue将被忽略)。
lastindexof() lastindexof()方法与indexof()方法类似,只是它从右到左地查找串。lastindexof()仍旧给出被查找串的首字符位置,而不是末尾字符的位置。 lastindexof()方法的语法形式如下: string.last indexof(searchvalue); searchvalue仍是想要查找的串。
(4)导航方法 使用超文本时会接触到锚(anchor)和链路的概念。锚就如同在网页中放置的书标(你可以很方便地回到那儿);链路是对另一页面(或相同及不同页面的锚)的指引。
anchor() anchor()方法用来设置一个锚,它的语法形式很简单: string.anchor(anchorname); 考察下面的例子: var indexstring=index; document.writeln(indexstring.anchor(anchorname)); 这条语句在屏幕上打印文本index;anchorname是这个锚真正的名字。像这样的锚一般被链路用来跳转到页面中锚的实际位置。
link() link()的功能是跳转到指定的目标。它相当于标准html引用(由href属性指定的超文本引用)。它的语法形式也非常简单: linktext.link(href) linktext是屏幕上的文本,href属性不一定是一个锚,它也可以是一个合法的url引用。下面的例子说明如何用link()来创建直接跳转到前面创建的锚的链路; var indexstirng=index document.writeln(indexstring.link(#+anchorname)+ ) 这条语句在屏幕上打印链路格式的文本index(通常在下面加下划线);anchorname是锚的实际的名字。当单击这条链路时,这个锚将出现在浏览器用户窗口的顶部。请注意:要保证在同一文档内部的锚的引用中加上#号。在加#号的时候,要将它用双引号括起来并用加号与完整的引用连起来。可以参见前面的例子。如果省略了#号,链路的目标就是一个文件而不是一个锚。单击这条链就会使浏览器试图装入名为anchorname(在本例中)的文件。因为这一文件不存在,浏览器将产生notfound的错误信息。
二、窗口方法
窗口是浏览器与用户交互的界面。利用javascript中的窗口方法和属性,可以创建可控制窗口。在这一部分里,将介绍一些窗口方法和属性。
1.预定义窗口(对话框)
javascript提供三个方法来产生简单的窗口(或对话框):alert (),confirm()和promp t()。尽管我们无法控制这些对话框的位置,按钮或大小,但它们提供了初步的机制来提示用户或接收输入。以下讨论各方法。
alert() alert()方法建立了一个独立的消息窗口,语法形式如下: alert(message) 其中message是要在提示窗口中显示的文本串。
confirm() confirm()方法用于进行一个事件之前请求获得用户的认可。它给用户以停止某个事件出现的机会。该方法的语法形式如下: confirm(message) 其中message是一个文本串。
prompt() prompt()方法接收用户的反馈,用户可以从键盘键入信息,或者如果他们接收一个默认值的话,可以用鼠标选取。该方法的语法形式如下: prompt(message) 如果想要指定一个默认值,可以用: prompt(message,imputdefault)其中message是文本或数字。用户可以键入任何信息。因此,一个变量虽然希望输入一个数字进行计算,也可能输入给它的是文本。如果单击了cancel键和关闭键,pr ompt()返回空值。
2.定制窗口
上面的三种窗口虽然很简单,但它们有一个共同的缺点是不灵活, 即无法改变它们的大小和风格。下面,我们来讨论在javascript中如何定制窗口的问题。首先,我们应知道如何创建一个窗口。
open() open()方法将创建一个新窗口。使用该方法创建窗口与选择file 菜单项的new web bro wser的效果是相似的。该方法的语法形式如下 : windowvar=window.open(url,windowname) 或者也可以定义一个窗口的属性: windowvar=window.open(url,windowname,windowattribut er)其中windowname是要创建的窗口的名字。url是一个文本串,指定当前新窗口创建时要调用的url。如果没有指定url(使用空字符串) ,那么窗口是空的。 windowname代表该窗口的名字。 windowfeatures是可以赋给窗口的可选属性,比如一个工具条,位置,目录,状态条,菜单条,滚动条,大小可变的能力,宽度和高度(见附表)。设定它们时以逗号为分隔符,并在最外加上双引号。
窗口属性 这些属性的使用形式如下: feeture=value 其中feature是所要选择的属性,value(除了width和height两种属性外)或是yes(或1)以激活该属性,或是no(或0)以消除它。 width和height的语法形式如下: feature=pixels 其中pixels是任何正整数(或正整数变量),确定新窗口的大小(以像素为单位)。
close() 使用close()方法,它的语法形式如下: windowreference.close() 可以使用以下任何一个函数关闭当前窗口:window.close()、self.close()、close()。我们可以通过引用一个窗口的windowvar(该值是调用open()方法时产生的),来关闭一个独立的窗口。比如:某个窗口创建时所用的命令是: windowb=open(,,anotherwindow,windth=80,height=40); 我们可以在任何其它窗口中关闭它,使用命令: windowb.close() 关闭最顶层的窗口可以利用以下方法 top.close() 当然,如果要关闭当前窗口,我们可以使用任何自行关闭命令。
javascript为我们提供了一些非常有用的常用内部对象和方法。用户不需要用脚本来实现这些功能。这正是基于对象编程的真正目的。
在javascript提供了string(字符串)、math(数值计算)和date(日期)三种对象和其它一些相关的方法。从而为编程人员快速开发强大的脚本程序提供了非常有利的条件。
1、常用内部对象
在javascript中对于对象属性与方法的引用,有两种情况:其一是说该对象是静态对象,即在引用该对象的属性或方法时不需要为它创建实例;而另一种对象则在引用它的对象或方法是必须为它创建一个实例,即该对象是动态对象。
对javascript内部对象的引用,以是紧紧围绕着它的属性与方法进行的。因而明确对象的静动性对于掌握和理解javascript内部对象是具有非常重要的意义。
1)、串对象
o string对象:内部静态性。
o 访问properties和methods时,可使用(.)运算符实现。
o 基本使用格式:objectname.prop/methods
(1)串对象的属性
该对象只有一个属性,即length。它表明了字符串中的字符个数,包括所有符号。
例:
mytest=this is a javascript
mystringlength=mytest.length
最后mystringlength返回mytest字串的长度为20。
(2)串对象的方法
string对象的方法共有19个。主要用于有关字符串在web页面中的显示、字体大小、字体颜色、字符的搜索以及字符的大小写转换。
其主要方法如下:
o 锚点anchor():该方法创建如用html文档中一样的anchor标记。使用anchor如用html中(a name=)一样。通过下列格式访问:string.anchor(anchorname)。
o 有关字符显示的控制方法
big字体显示, italics()斜体字显示,bold()粗体字显示,blink()字符闪烁显示,small()字符用小体字显示,fixed()固定高亮字显示、fontsize(size)控制字体大小等。
o 字体颜色方法;fontcolor(color)
o 字符串大小写转换
tolowercase()-小写转换,touppercase()大写转换。下列把一个给定的串分别转换成大写和小写格式:
string=stringvalue.touppercase和string=stringvalue.tolowercase。
o 字符搜索:indexof[charactor,fromindex]
从指定formindtx位置开始搜索charactor第一次出现的位置。
返回字串的一部分字串:substring(start,end)
从start开始到end的字符全部返回。
2)、算术函数的math对象
功能:提供除加、减、乘、除以外的一引些自述运算。如对数,平方根等 。
静动性:静态对象
(1)主要属性
math中提供了6个属性,它们是数学中经常用到的常数e、以10为底的自然对数ln10、以2为底的自然对数ln2、3.14159的pi、1/2的平方根sqrt1-2,2的平方根为sqrt2。
(2)主要方法
绝对值:abs()
正弦余弦值:sin(),cos()
反正弦反余弦 :asin(), acos()
正切反正切:tan(),atan()
四舍五入:round()
平方根:sqrt()
基于几方次的值:pow(base,exponent)
...
3)、日期及时间对象
功能:提供一个有关日期和时间的对象。
静动性:动态性,即必须使用new运算符创建一个实例。例:
mydate=new date()
date对象没有提供直接访问的属性。只具有获取和设置日期和时间的方法。
日期起始值:1770年1月1日00:00:00。
1. 获取日期的时间方法
getyear(): 返回年数
getmonth():返回当月号数
getdate(): 返回当日号数
getday():返回星期几
gethours():返回小时数
getmintes(:返回分钟数
getseconds():返回秒数
gettime() : 返回毫秒数
(2)设置日期和时间:
setyear();设置年
setdate():设置当月号数
setmonth():设置当月份数
sethours():设置小时数
setmintes():设置分钟数
setseconds():设置秒数
settime ():设置毫秒数
...
2、javascript中的系统函数
javascript中的系统函数又称内部方法。它提供了与任何对象无关的系统函数,使用这些函数不需创建任何实例,可直接用。
1.返回字符串表达式中的值:
方法名:eval(字串表达式),例:
test=eval(8+9+5/2);
2. 返回字符串asci码:
方法名:unescape (string)
3.返回字符的编码:
方法名:escape(character)
4.返回实数:
parsefloat(floustring);
5.返回不同进制的数:
parseint(numbestring ,rad.x)
其中radix是数的进制,numbs字符串数