JavaScript语言是基于对象的,而不是面向对象的。因为它本身没有提供如抽象、继承、重载等有关面向对象语言的功能。而是将其他语言所创建的复杂对象统一起来,从而形成一个非常强大的对象系统。
但是javascript还是具有一些面向对象的基本特征。可以根据需要创建自己的对象,从而进一步扩大Javascript的应用范围,增强编写功能强大的Web文档。
1、引用对象的途径
a) 音乐能够JavaScript内部对象
b) 由浏览器环境中提供
c) 创建新对象
也就是说在一个对象被引用之前,这个对象必须存在,否则将毫无意义,从而出现错误信息。JavaScript引用对象通过三种方式获取。要么创建新的对象,要么利用现有的对象。
2、有关对象的操作语句
a) for ... in 语句。
格式:for(对象名 in 已知对象名)
说明:
1、该语句的功能是用于对已知对象的所有属性进行操作的控制循环。它是将一个已知对象的所有属性反复赋给一个变量;而不是使用计数器来实现的。
2、该语句的优点是无需知道对象中属性的个数即可进行操作。
b) with语句
使用该句的意思:在该语句体内,任何对变量的引用被认为是这个对象的属性,以节省一些代码。
with (object){
...
}
所有在with语句后的花括号中的语句,都是在后面object对象的作用域的。
c) this关键字
this是对当前的引用,在JavaScript由于对象的引用是多层次、多方位的,往往一个对象的引用又需要对另一个对象引用。而另一个对象有可能又要引用另一个对象,这样有可能造成混乱。为此JavaScript提供了this这个用于将对象指定为当前对象的语句this。
d) javascript提供了string、Math和Date三种对象和其他一些相关方法,为开发功能强大的脚本程序提供了非常有利的条件。
JavaScript中有两种引用对象属性和方法的情况:
1、该对象是静态对象---在引用该对象的属性或方法时不需要为它创建实例。
2、该对象是动态对象---在引用它的属性或方法时必须为它创建一个实例。
e) 串对象
string对象:内部静态性。
访问方法和属性时,可使用.运算符实现。
基本使用格式:objectName.prop/methods
1、属性:该对象只有一个属性:length。表明了字符串的字符个数,包括所有符号。 eg. mytest = "This is a JavaScript"; mystring = mytest.length;
2、方法:string对象的方法公有19个,主要用于有关字符串在web页面中的显示,字体大小、颜色、字符的搜索以及字符的大小写转换。
主要方法:
1、锚点anchor():该方法创建如用html文档中一样的anchor标记。使用anchor如用html中(a name="")一样,通过下列格式访问:string.anchor(anchorName);
2、有关字符显示的控制方法:big().italics().bold().blink().small(),fixed(),fontsize(size)
3、字体颜色方法:fontcolor(color);
4、字符串大小写转换:toLowerCase()小写转换;toUpperCase()大写转换。eg. string=stringValue.toUpperCase();
5、字符搜索:indexOf(character,fromindex);
6、返回字符的一部分子串:substring(start,end);
f) 算数函数的Math对象:静态对象
Math中提供了6个属性,分别是:常数e、以10为底的自然对数ln10、以2为底的自然对数ln2、3.14159的PI、1、2的平方根sqrt1-2、2的平方根为sqrt2。
主要方法:
绝对值:abs();
正弦余弦值:sin(),cos()
反正弦反余弦:asin(),acos()
正切反正切:tan(),atan()
四舍五入:round()
平方根:sqrt()
基于几方次的值:pow(base,exponent)
...
g) 日期及时间对象----动态性
功能:提供一个有关日期和时间的对象
日期起始值:1770年1月1日00:00:00
获取日期的时间方法:
getYear(): 返回年数
getMonth():返回当月号数
getDate():返回当日号数
getDay():返回星期几
getHours():返回小时数
getMinutes():返回分钟数
getSeconds():返回秒数
getTime():返回毫秒数
设置日期和时间:
setYear();
。。。 与上面的相对应。
h) JavaScript中的系统函数
javaScript中的内部函数又称内部方法。它提供了与任何对象无关的系统函数,使用这些函数不需要创建任何实例,就可以直接使用。
1、返回字符串表达式的值:eval(字符串表达式)----test = eval("8+9+5*2");
2、返回字符串ascii码:unEscape(string)
3、返回字符的编码:escape(character)
4、返回实数:parseFloat(floustring);
5、返回不同进制的数:parseInt(numberstring, radix);//其中radix是数的进制,numberstring是字符串数。
i)内部数组
1、anchors[]:使用<a name="anchorName">标识来建立锚的链接。
2、links[]:使用<a href="url">来定义一个超文本锚的链接。
3、forms[]:在程序中使用多窗体时,建立该数组。
4、elements[]:在一个窗口中使用多个元素时,建立该元素。
5、frames[]:建立框架时,使用该数组。
6、anchors[]用于窗体的访问,link[]用于被链接到的锚点的访问,forms[]反映窗体的属性,而anchors[]反映web页面中的链接属性。