【 tulaoshi.com - Web开发 】
JavaScript 是使用“对象化编程”的,或者叫“面向对象编程”的。所谓“对象化编程”,意思是把 JavaScript 能涉及的范围划分成大大小小的对象,对象下面还继续划分对象直至非常详细为止,所有的编程都以对象为出发点,基于对象。小到一个变量,大到网页文档、窗口甚至屏幕,都是对象。这一章将“面向对象”讲述 JavaScript 的运行情况。
对象的基本知识
对象是可以从 JavaScript“势力范围”中划分出来的一小块,可以是一段文字、一幅图片、一个表单(Form)等等。每个对象有它自己的属性、方法和事件。对象的属性是反映该对象某些特定的性质的,例如:字符串的长度、图像的长宽、文字框(Textbox)里的文字等等;对象的方法能对该对象做一些事情,例如,表单的“提交”(Submit),窗口的“滚动”(Scrolling)等等;而对象的事件就能响应发生在对象上的事情,例如提交表单产生表单的“提交事件”,点击连接产生的“点击事件”。不是所有的对象都有以上三个性质,有些没有事件,有些只有属性。引用对象的任一“性质”用“对象名.性质名”这种方法。
基本对象
现在我们要复习以上学过的内容了——把一些数据类型用对象的角度重新学习一下。
Number “数字”对象。这个对象用得很少,作者就一次也没有见过。不过属于“Number”的对象,也就是“变量”就多了。
属性
MAX_VALUE 用法:Number.MAX_VALUE;返回“最大值”。
MIN_VALUE 用法:Number.MIN_VALUE;返回“最小值”。
NaN 用法:Number.NaN 或 NaN;返回“NaN”。“NaN”(不是数值)在很早就介绍过了。
NEGATIVE_INFINITY 用法:Number.NEGATIVE_INFINITY;返回:负无穷大,比“最小值”还小的值。
POSITIVE_INFINITY 用法:Number.POSITIVE_INFINITY;返回:正无穷大,比“最大值”还大的值。
方法
toString() 用法:数值变量.toString();返回:字符串形式的数值。如:若 a == 123;则 a.toString() == '123'。
String 字符串对象。声明一个字符串对象最简单、快捷、有效、常用的方法就是直接赋值。
属性
length 用法:字符串对象.length;返回该字符串的长度。
方法
charAt() 用法:字符串对象.charAt(位置);返回该字符串位于第位置位的单个字符。注意:字符串中的一个字符是第 0 位的,第二个才是第 1 位的,最后一个字符是第 length - 1 位的。
charCodeAt() 用法:字符串对象.charCodeAt(位置);返回该字符串位于第位置位的单个字符的 ASCII 码。
fromCharCode() 用法:String.fromCharCode(a, b, c...);返回一个字符串,该字符串每个字符的 ASCII 码由 a, b, c... 等来确定。
indexOf() 用法:字符串对象.indexOf(另一个字符串对象[, 起始位置]);该方法从字符串对象中查找另一个字符串对象(如果给出起始位置就忽略之前的位置),如果找到了,就返回它的位置,没有找到就返回“-1”。所有的“位置”都是从零开始的。
lastIndexOf() 用法:字符串对象.lastIndexOf(另一个字符串对象[, 起始位置]);跟 indexOf() 相似,不过是从后边开始找。
split() 用法:字符串对象.split(分隔符字符);返回一个数组,该数组是从字符串对象中分离开来的,分隔符字符决定了分离的地方,它本身不会包含在所返回的数组中。例如:'1&2&345&678'.split('&')返回数组:1,2,345,678。关于数组,我们等一下就讨论。
substring() 用法:字符串对象.substring(始[, 终]);返回原字符串的子字符串,该字符串是原字符串从始位置到终位置的前一位置的一段。终 - 始 = 返回字符串的长度(length)。如果没有指定终或指定得超过字符串长度,则子字符串从始位置一直取到原字符串尾。如果所指定的位置不能返回字符串,则返回空字符串。
substr() 用法:字符串对象.substr(始[, 长]);返回原字符串的子字符串,该字符串是原字符串从始位置开始,长度为长的一段。如果没有指定长或指定得超过字符串长度,则子字符串从始位置一直取到原字符串尾。如果所指定的位置不能返回字符串,则返回空字符串。
toLowerCase() 用法:字符串对象.toLowerCase();返回把原字符串所有大写字母都变成小写的字符串。
toUpperCase() 用法:字符串对象.toUpperCase();返回把原字符串所有小写字母都变成大写的字符串。
Array 数组对象。数组对象是一个对象的集合,里边的对象可以是不同类型的。数组的每一个成员对象都有一个“下标”,用来表示它在数组中的位置(既然是“位置”,就也是从零开始的啦)。
数组的定义方法:
var 数组名 = new Array();
这样就定义了一个空数组。以后要添加数组元素,就用:
数组名[下标] = ...;
注意这里的方括号不是“可以省略”的意思,数组的下标表示方法就是用方括号括起来。
如果想在定义数组的时候直接初始化数据,请用:
var 数组名 = new Array(元素1, 元素2, 元素3...);
例如,var myArray = new Array(1, 4.5, 'Hi'); 定义了一个数组 myArray,里边的元素是:myArray[0] == 1; myArray[1] == 4.5; myArray[2] == 'Hi'。
但是,如果元素列表中只有一个元素,而这个元素又是一个正整数的话,这将定义一个包含正整数个空元素的数组。
注意:JavaScript只有一维数组!千万不要用“Array(3,4)”这种愚蠢的方法来定义 4 x 5 的二维数组,或者用“myArray[2,3]”这种方法来返回“二维数组”中的元素。任意“myArray[...,3]”这种形式的调用其实只返回了“myArray[3]”。要使用多维数组,请用这种虚拟法:
var myArray = new Array(new Array(), new Array(), new Array(), ...);
其实这是一个一维数组,里边的每一个元素又是一个数组。调用这个“二维数组”的元素时:myArray[2][3] = ...;
属性
length 用法:数组对象.length;返回:数组的长度,即数组里有多少个元素。它等于数组里最后一个元素的下标加一。所以,想添加一个元素,只需要:myArray[myArray.length] = ...。
方法
join() 用法:数组对象.join(分隔符);返回一个字符串,该字符串把数组中的各个元素串起来,用分隔符置于元素与元素之间。这个方法不影响数组原本的内容。
reverse() 用法:数组对象.reverse();使数组中的元素顺序反过来。如果对数组[1, 2, 3]使用这个方法,它将使数组变成:[3, 2, 1]。
slice() 用法:数组对象.slice(始[, 终]);返回一个数组,该数组是原数组的子集,始于始,终于终。如果不给出终,则子集一直取到原数组的结尾。
sort() 用法:数组对象.sort([方法函数]);使数组中的元素按照一定的顺序排列。如果不指定方法函数,则按字母顺序排列。在这种情况下,80 是比 9 排得前的。如果指定方法函数,则按方法函数所指定的排序方法排序。方法函数比较难讲述,这里只将一些有用的方法函数介绍给大家。
按升序排列数字:
function sortMethod(a, b) {
return a - b;
}
myArray.sort(sortMethod);
按降序排列数字:把上面的“a - b”该成“b - a”。
有关函数,请看下面。
Math “数学”对象,提供对数据的数学计算。下面所提到的属性和方法,不再详细说明“用法”,大家在使用的时候记住用“Math.名”这种格式。
当前1/2页
12下一页