JavaScript 入门基础 (五)
目录
JavaScript内置对象
5.1 JavaScript对象初探
什么是对象
内置对象
Math、Date、String、Array、Number、Boolean、Function、Global、Object、RegExp、Event
5.2 Math对象
属性 |
功能说明 |
E |
自然对数的底,约为2.71828 |
LN10 |
10的自然对数,约为2.30259 |
LN2 |
2的自然对数,约为0.69315 |
LOG10E |
以10为底的自然对数E的对数,约为0.434 |
LOG2E |
以2为底的自然对数E的对数,约为1.442 |
SQRT2 |
0.5的平方根约为0.707.1 |
SQRT1_2 |
2的平方根,约为1.4142 |
PI |
圆周率,约为3.1415926 |
方法 |
功能说明 |
sin(num) |
返回参数num的正弦值 |
cos(num) |
返回参数num的余弦值 |
tan(num) |
返回参数num的正切值 |
asin(num) |
返回参数num的反正弦值 |
acos(num) |
返回参数num的反余弦值 |
atan(num) |
返回参数num的反正切值 |
atan2(num) |
返回坐标num1,num2对应的极坐标角度 |
abs(num) |
返回参数num的绝对值 |
exp(num) |
返回自然对数E的num次方 |
log(num) |
返回参数num的自然对数 |
sqrt(num) |
返回参数num的平法根 |
pow(num1,num2) |
返回参数num1的num2次方 |
round(num) |
返回参数num四舍五入的取整数 |
random() |
返回一个0到1之间的随机数,不包括1 |
ceil(num) |
返回大于或等于参数num的最小整数 |
floor(num) |
返回大于或等于参数num的最大整数 |
max(num1,num2) |
返回参数num1和num2中的较大的数 |
min(num1,num2) |
返回参数num1和num2中的较小的数 |
toString() |
返回表示该对象的字符串 |
5.3 new运算符和对象操作语句
使用new运算符
nonth=newArray();//创建一个数组变量month
deletemonth(2);//删除month的第3个单元
使用对象操作语句
r1=Math.round(Math.random()*10);
r2=Math.round(Math.random()*10);
r3=Math.round(Math.random()*10);
对于每个Math对象的每个方法都要在前面写上Math,可以写成如下格式,效果一样
with(Math){
r1=round(random()*10);
r2=round(random()*10);
r3=round(random()*10);
}
5.4进一步使用Array对象
Array对象的属性和方法
方法 |
功能说明 |
join(string) |
将数组中的所有元素合并为一个字符串,如果指定了参数,则该参数将作为字符串中各数组元素的分隔符 |
concat(Arrayn) |
将两个数组的内容并到一个数组中。例如:Array1.concat(Array 2)就是将数组Array 2的内容并到Array1的末尾 |
sort(function) |
对数组元素进行排序。如果不指定参数,则JavaScript元素将元素转换为字符串,然后按字母顺序排序(默认情况下是升序)。如果指定了参数,则该参数必须是自定义的排序函数。根据数组中数据类型的不同,排序可以通过给定的排序函数使用不同的标准 |
reverse() |
颠倒数组元素的排序,即最后一个元素掉转到下标为0的位置,而第一个位置的元素则转到最后一个元素位置上 |
slice(start,[stop]) |
返回数组的一部分元素。这部分元素从下标start开始到下标stop结束(不包含stop)。如果stop参数省略了,则这部分元素从下标start(不包含start)开始一直到数组的末尾。如果stop是负数,例如-2,则表示是倒数第2个元素 |
toString() |
将数组中的元素 返回一个字符串,各个元素之间用逗号分隔开元素 |
valueOf() |
返回对象的原始值 |
5.5 String对象
5.1属性和方法
方法 |
功能说明 |
char(num) |
返回参数num指定索引位置处的字符。从左到右索引,开始处为0 |
charCodeAt(num) |
返回参数num指定索引位置处的字符的ISO-latin-1值。从左到右索引,开始处为0 |
indexOf(string[,num]) |
返回参数string在字符串中出现的初始位置。如果指定了num,则表示从索引num处开始查找,否则查找从0处开始 |
lastIndexOf(string[,num]) |
返回参数string在字符串中出现的初始位置。如果指定了num,则表示从索引num处开始查找,与indexOf方法不同的是,此方法从后往前查找字符串 |
substring(num1,[,num2]) |
如果指定了两个参数num1和num2,返回在字符串中num1和num2之间的字符串。如果只有一个参数,则返回从该位置到字符串末尾的字符串 |
substr(num1[,num2]) |
如果指定了两个参数num1和num2,返回在字符串中num1和num2大于string.length,则它被当做string.length;如果num1=num2,则返回空字符串,如果只指定了一个参数num1,则返回从该位置到字符串结尾处的字符串 |
split(regexpression,num)Split(separator[,num]) |
根据参数传入的正则表达式或者分隔调用此方法的字符串 |
toUpperCase() |
将字符串中的所有字符全部返回大写字符 |
toLowerCase() |
将字符串中的所有字符全部返回为小写字符 |
valueOf() |
返回对象的原始值,对于string对象,也就是返回字符串本身 |
concat(string) |
将参数string传过来的字符串加到当前字符串的末尾,并返回新的字符串 |
slice(num1[,num2]) |
返回字符串中从索引num1到索引num2之间的字符串。如果num2是负数,则从字符串结束位置向前num2个字符的位置是返回字符串的结束位置。如果只指定一个参数num1,则返回从该索引字符串结束之间的字符串 |
char(num) |
返回参数num指定索引位置处的字符。从左到右索引,开始处为0 |
charCodeAt(num) |
返回参数num指定索引位置处的字符的ISO-latin-1值。从左到右索引,开始处为0 |
indexOf(string[,num]) |
返回参数string在字符串中出现的初始位置。如果指定了num,则表示从索引num处开始查找,否则查找从0处开始 |
lastIndexOf(string[,num]) |
返回参数string在字符串中出现的初始位置。如果指定了num,则表示从索引num处开始查找,与indexOf方法不同的是,此方法从后往前查找字符串 |
substring(num1,[,num2]) |
如果指定了两个参数num1和num2,返回在字符串中num1和num2之间的字符串。如果只有一个参数,则返回从该位置到字符串末尾的字符串 |
substr(num1[,num2]) |
如果指定了两个参数num1和num2,返回在字符串中num1和num2大于string.length,则它被当做string.length;如果num1=num2,则返回空字符串,如果只指定了一个参数num1,则返回从该位置到字符串结尾处的字符串 |
split(regexpression,num) |
根据参数传入的正则表达式或者分隔调用此方法的字符串 |
match(regexpression) |
这个方法可以使用指定的正则表达式来搜索字符串。它是通过查找参数regexpression传入的正则表达式所指定的字符串,返回包含在字符串中找到的所有匹配的一个数组 |
replace(regexpression,replacestring) |
在调用此方法的字符串中查找通过参数regexpression传入的正则表达式所指定的字符串,如果在字符串中找到一个匹配,则它就返回出参数regexpression替换匹配之后的字符串 |
search(reggexpression) |
在调用此放置的字符串中查找通过参数regexpression传入的正则表达式所指定的字符串,返回匹配开始字符串中的索引,如果没有找到匹配,则返回-1 |
toString() |
如果直接调用此方法,则返回构造函数。如果是在字符串实例中调用此方法,则返回可创建实例时的源字符串 |
big() |
将调用此方法的字符串用大体字显示,相当于为字符串添加<BIG></BIG>标记符号 |
bolg() |
将调用此方法的字符串用黑体字显示,相当于为字符串添加<B></B>标记符 |
fixed() |
将调用此方法的字符串用等宽字体显示,相当于字符串添加<TT></TT>标记符 |
fontcolor(hexnum) fontcolor(cloorname) |
将调用此方法的字符串用参数所设置的颜色显示,相当于为字符串添加<FONT color=""></FONT>标记符 。参数可以使表示颜色的十六进制值,也可以是浏览器能够识别的颜色的名称 |
fontsize(num) fontsize(String) |
将调用此方法的字符串用参数所设置的字体大小显示,相当于为字符串添加<FONT size=""></FONT>标记符,参数1-7之间的数字,也可以是以字符串形式传入的数字。如果使用字符串数字,则字体大小要取BASEFONT大小的相对倍数 |
italics() |
将调用此方法的字符串用斜体字显示,相当于为字符串添加<I></I>标记符 |
small() |
将调用此方法的字符串用小体字显示,相当于为字符串添加<SMALL></SMALL>标记符 |
strike() |
将调用此方法的字符串用删除线格式显示,相当于为字符串添加<STRIKE></STRIKE>标记符 |
sub() |
将调用此方法的字符串用下标格式显示,相当于为字符串添加<SUB></SUB>标记符 |
sup() |
将调用此方法的字符串用上标格式显示,相当于为字符串添加<SUB></SUB>标记符 |
anchor(name) |
将调用此方法的字符串转换成一个<A>标记符的实例,用参数name设置NAME属性。这相当于字符串用<A NAME=name></A>进行标记。它用来创建一个链接目标 |
link(URL) |
将调用此方法的字符串转换成一个<A>标记符的实例,用参数URL设置HREF属性。这相当于将字符串用<A HREF=URL></A>进行标记 |
5.6 Date对象
Date对象的属性和方法
方法 |
功能说明 |
getDate() |
返回当前日期 |
getDay() |
返回当前日期的天 |
getMonth() |
返回当前日期的月份(0-11) |
getYear() |
返回当前日期的年,可以是两位也可以是4位 |
getFullyear() |
返回完整的年,这个数是4位的 |
getSeconds() |
返回当前时间的秒数 |
getMillseconds() |
返回当前时间的毫秒部分的整数 |
getMinutes() |
返回当前时间的分总部分的整数 |
getHours() |
返回当前时间的小时部分的整数 |
getTime() |
返回当前的时间的毫秒数(从1970年1月1日到当前Date对象指定的时间之间的毫秒数) |
getTimeZoneOffset() |
返回以GMT为基准的时区偏差,以分钟计量 |
getUTCDate() |
返回表示转换成世界时间的月中的某一天(1-31) |
getUTCDay() |
返回表示转换成世界时间的星期中的某一天(0-6,0表示星期日,6表示星期六) |
getUTCMondth() |
返回用世界时间表示日期的月份(0-11) |
getUTCFullyear() |
返回表示转换成世界时间的年的4位数 |
getUTCSecond() |
返回用世界时间表示时间的秒数0-59 |
getUTCMillisecond() |
返回用世界时间表示时间的毫秒数 |
getUTCMinutes() |
返回用世界时间表示时间的分钟数0-59 |
getUTCHours() |
返回用世界时间表示时间的小时数0-23 |
setDate(day) |
以参数day(1-31的整数)指定的数设置Data对象中的日期数。返回从1970年1月1日凌晨到Date对象指定的日期和时间之间的毫秒数 |
setMonth(month) |
将Date的月份数设置为参数month指定的整数0-11 |
setYear(year) |
将Date的年份数设置为参数year指定的整数这个可以是2位或4位的 |
setFullYear(year) |
将Date的年份数设置为参数year指定的4位数 |
setTime(milliseconds) |
将Date对象的时间设置为参数milliseconds指定的整数。这个数表示从1970年1月1日凌晨到要设定时间之间的毫秒数 |
setHours(hour) |
将Date对象中的小时数设置为参数hours指定的整数0-23 |
setMinutes(minutes) |
将Date对象中的分钟数设置为参数minutes指定的整数0-59 |
setSeconds() |
将Date对象中的秒数设置为参数seconds指定的整数0-59 |
setMillSeconds(milliseconds) |
将Date对象中的毫秒数设置为参数milliseconds指定的整数0-999 |
parse(date) |
从表示时间的字符串中返回时间,返回的是从1970年1月1日凌晨到参数Date指定的日期之间的毫秒数 |
UTC(year,month,day,hours,minutes,seconds,milliseconds) |
与相应的Date对象类似,不过是用世界时间创建日期 |
setUTCDate(day) |
将Date对象中得日期设置为参数day表示的一个整数(1-31) |
setUTCFullyear(year) |
将Date对象中得年份设置为参数year表示的4位整数 |
setUTCMonth(month) |
将Date对象中得年份设置为参数month表示的一个整数0-11 |
setUTCHours(hours) |
将Date对象中得年份设置为参数hours表示的一个整数0-23 |
setUTCMinutes(minutes) |
将Date对象中得年份设置为参数minutes表示的一个整数0-59 |
setUTCSeconds(seconds) |
将Date对象中得年份设置为参数seconds表示的一个整数0-59 |
setUTCMillSeconds(milliseconds) |
将Date对象中得年份设置为参数milliseconds表示的一个整数0-999 |
toString() |
将时间信息返回为字符串 |
toUTCString() |
将世界时间信息返回为字符串 |
toLocalString() |
转换成以当地时间方式表示时间的字符串 |
toGMTString() |
转换成以格林威治时间表示时间的字符串 |
valueOf() |
返回对象的原始值 |
提取日期和时间
要使用Date对象,首先要指定变量名,与String对象不同的是需要使用new运算符
变量名=newDate()
5.7 Global和Number
属性和方法
对象 |
方法 |
eval(x) eval(str) |
eval()函数接受参数,并将参数作为一个JavaScript源代码来执行。最后返回执行JavaScript源代码的返回值 |
parseFloat(x) |
用于将字符串x开头的整数或浮点数分解出来。若字符串不是以数字开头,则parseFloat函数停止转换,返回NaN |
parseInt(x,n) |
用于将字符串开头的整数分解出来,若字符串不是以数字开头,则返回NaN。如果parseInt函数中附加一个n,表示可以返回n进制的一个整数 |
isFinite(x) |
用于测试器参数表达式x的值是否是有界的。如果有界,则函数数值返回true,否则函数值返回false |
isNaN(x) |
用于测试其参数表达式x的值是不是NaN,如果是,则返回true,否则返回false |
escape(str) |
escape(str)函数以一个string对象或表达式为参数并返回一个string对象。参数指定的字符串中的所有非字母字符被转换成以XX%表示的等价数字。XX是一个表示非字母字符的十六进制数 |
unescape() |
它将参数传递来的字符串中的十六进制码转换成相应的ASCII码并返回 |
使用eval()
eval("document.write('我只是试一试')");
相当于执行语句document.write('我只是试一试')
使用Number对象
属性 |
功能说明 |
MAX_VALUE |
表示数的最大可能值,大约为1.8E308 |
MIN_VALUE |
表示数的最小可能值,大约为5E-324 |
NaN |
表示非数组 |
NEGTIVE_INFINITY |
表示数字为负无穷大 |
POSITIVE_INFINITY |
表示数字的正无穷大 |
prototype |
用于为对象添加属性和方法 |
方法 |
功能说明 |
toString() |
返回用字符串表示的Number对象 |
valueOf() |
返回对象的原始值 |
5.8使用Boolean和Function对象
Boolean对象
Boolean对象有一个属性prototype,用于为Boolean对象添加新的属性和方法。
Boolean对象有两个方法,toString()方法返回表示Boolean对象的逻辑字符串(true和false)。valueOf()方法返回Boolean对象的原始值
Function对象
Function对象可以将函数作为对象来进行访问,并且可以在程序执行的过程中动态地生成函数并且调用函数
属性 |
功能说明 |
caller |
表示调用当前正在执行的函数 |
prototype |
可以用来为队形添加新的属性和方法 |
arguments |
表示函数参数的数组 |
方法 |
功能说明 |
call(this)或call(this,参数1,参数2,……参数n) |
允许调用另外一个对象的方法 |
apply() |
用于将一个对象中的方法应用到另一个对象中 |
toString() |
用于将一个函数转换为字符串 |
5.9其他内置对象
Event
属性 |
功能说明 |
altKey |
当Alt键按下时为真 |
ctrlKey |
当Ctrl键按下时为真 |
shiftKey |
当Shift键按下时为真 |
button |
事件发生时按下的鼠标键(0表示未按任何键,1表示按下鼠标左键,2表示按下鼠标右键,……) |
cancelBubble |
表示取消或启用事件发生,对应值为真或假 |
clientX |
鼠标光标相对于事件所在窗口的客户区域的水平坐标 |
clientY |
鼠标光标相对于事件所在对象的垂直坐标 |
keyCode |
与所按下的键相关的Unicode代码 |
offsetX |
鼠标光标相对于事件所在对象的水平坐标 |
offsetY |
鼠标光标相对于事件所在对象的垂直坐标 |
reason |
表示数据源对象的数据传输状态 |
rerurnValue |
表示从事件中返回的值(true或false) |
screenX |
鼠标光标相对于用户屏幕的水平坐标 |
screenY |
鼠标光标相对于用户屏幕的垂直坐标 |
fromElement |
表示被移动的元素 |
srcElement |
表示触发事件的对象 |
srcFilter |
表示导致onfilterchange事件触发的过滤器对象 |
toElement |
表示正在想其移动的元素 |
type |
以字符串形式返回事件对象中的事件名称 |
x |
鼠标光标相对于事件所在的文档的水平距离 |
y |
鼠标光标相对于事件所在的文档的垂直距离 |
Object
属性和方法 |
功能说明 |
constructor |
用来表示对象的构造函数的名称 |
prototype |
用来为对象添加新的属性和方法 |
toString() |
用来将一个对象转换为字符串 |
valueOf() |
返回对象的原始值 |
RegExp
属性 |
功能说明 |
lastMatch/$& |
指示最后一个匹配成功的字符。一旦下一次正则匹配开始,这个值就会发生变动 |
Multiline/$* |
指示在换行符之间这样的正则搜索是否进行。如果这个值为true,则正则搜索就可以再行与行之间进行、一旦下一次正则匹配开始,这个值就会发生 变动 |
Input/$_ |
指出模式字符串的其他信息 |
lastParen/$+ |
指示最近一次模式查找的结果。一旦下一次正则匹配开始,这个值就会发生变动 |
rightContest/$' |
指示最近一次的匹配再往前一次的对应输入字符串。一旦下一次正则匹配开始,这个值就会发生变动 |
lastIndex |
指出在一个字符串中最后一次成功的正则匹配的位置,它是以字符串的下标值来表示的 |
leftContext |
指示最近一次匹配对应的输入字符串,一旦下一次正则匹配开始,这个值就会发生变动 |
Global |
指示在当前的正则表达式中是否制定g选项 |
Source |
指示当前的正则表达式中要搜索的字符串,即正则表达式的模式字符串 |
Ignorecase |
指示在当前的正则表达式中是否指定i选项 |
regExp.$* |
表示multiline属性 |
regExp.$& |
表示lastmatch属性 |
regExp.$_ |
表示input属性 |
regExp.$’ |
表示leftContext属性 |
regExp.$' |
表示rightContext属性 |
regExp.$+ |
表示lastParent属性 |
regExp.$1,$2,……$9 |
表示匹配的字符串 |
方法 |
功能说明 |
compile() |
把一个普通的字符串形式编译成一个正则表达式的内部形式,从而可以提高程序执行的效率 |
exec(str) |
在一个指定的目标字符串中搜索一个模式,如果搜索没有发现任何一个匹配,则返回null。如果搜索发现了多余1个的匹配,则所有的搜索结果会自动的存储在一个数组中,而且这次搜索结果也可以由正则表达式的各种属性反映出来。 |
test(str) |
测试在一个指定的目标字符串中是否存在正则表达式的模式,如果存在,则返回true |