javascript中的常用本地对象

一、javascript是面向对象的编程语言


封装:把相关的信息(无论数据或方法)存储在对象中的能力


聚集:把一个对象存储在另一个对象内的能力


继承:由另一个类(或多个类)得来类的属性和方法的能力。


多态:编写能以多种形态运行的函数或方法的能力


二、Array对象

使用单独的变量名来存储一系列的值。

2.1创建数组对象

var aValues = new Array();


var aValues = new Array(25);

var aColors = new Array("red","green","blue");



alert(aColors[1]);//输出green


aColors[0] = "white"; //修改第一个元素的值


var aColors = new Array();
aColors[0] = "red";
aColors[1] = "green";
aColors[2] = "blue";


2.2使用字面量创建Array

var aColors = ["red","green","blue"];
aColors[3]="black"; 

2.3数组的长度


var aColors = new Array("red","green","blue“);
alert(aColors.length);//输出3 


var aColors = new Array("red","green","blue“);
alert(aColors.length);//输出3
aColors[20]="black";
alert(aColors.length);//输出21
alert(aColors[3]);//输出undefined 


2.4数组的遍历

var subjects=["html/css/js","Web form","ajax","N-Tiers","oracle"];
for(var i=0;i<subjects.length;i++){
alert(subjects[i]);
}


var subjects=["html/css/js","Web form","ajax","N-Tiers","oracle"];
for(var index in subjects){
alert(subjects[index]);
}


2.5数组的属性和方法


length 设置或返回数组中元素的数目。


join() 通过指定的分隔符将数组的所有元素拼接成一个字符串。


reverse() 颠倒数组中元素的顺序。


sort() 对数组的元素进行排序


arrayObject.sort(sortby) 
参数为可选的。规定排序规则。必须是函数。
返回值为对数组的引用。请注意,数组在原数组上进行排序,不生成副本。 


自定义排序规则
如果想按照其他标准进行排序,就需要提供比较函数,该函数要比较两个值,然后返回一个用于说明这两个值的相对顺序的数字。
比较函数应该具有两个参数 a 和 b,其返回值如下:若 a 小于 b,在排序后的数组中 a 应该出现在 b 之前,则返回一个小于 0 的值。若 a 等于 b,则返回 0。 若 a 大于 b,则返回一个大于 0 的值。 
concat(Array array) 连接两个或更多的数组,并返回结果。



Array slice(Number start,Number end) 从某个已有的数组返回选定的元素


var messages4 = messages3.slice(0, 5);


splice() 删除元素,并向数组添加新元素。


messages4.splice(0, 2, "dddd"); //0表示开始删除的元素位置,2表示删除的长度,添加的元素为dddd,在删除位置添加


push() 向数组的末尾添加一个或更多元素,并返回新的长度。


pop() 删除并返回数组的最后一个元素


unshift() 向数组的开头添加一个或更多元素,并返回新的长度。
shift() 删除并返回数组的第一个元素

2.6数组的应用

var messages = new Array("","","");
messages[0] = "beijing";
messages[1] = "shanghai";
messages[2] = "zhejiang";
messages[3] = "hunan";



for ( var index in messages) {
document.writeln("遍历数组");
document.write(messages[index]);
document.write("<br>");
}

var s = messages.join(',');


document.writeln("join数组");
document.write(s);
document.write("<br>");


messages.reverse();

for ( var index in messages) {
document.writeln("倒序后");
document.write(messages[index]);
document.write("<br>");
}

messages.sort();
for ( var index in messages) {
document.writeln("排序后");
document.write(messages[index]);
document.write("<hr>");
}

var messages2 = ["a","c","b"];
var messages3 = messages.concat(messages2);
for ( var index in messages3) {
document.writeln("合并后");
document.write(messages3[index]);
document.write("<hr>");
}


var messages4 = messages3.slice(0, 5);

for ( var index in messages4) {
document.writeln("选择slice(0,5)后");
document.write(messages4[index]);
document.write("<hr>");
}

以上代码输出结果为:

遍历数组 beijing
遍历数组 shanghai
遍历数组 zhejiang
遍历数组 hunan
join数组 beijing,shanghai,zhejiang,hunan
倒序后 hunan
倒序后 zhejiang
倒序后 shanghai
倒序后 beijing
排序后 beijing


排序后 hunan
排序后 shanghai
排序后 zhejiang
合并后 beijing
合并后 hunan
合并后 shanghai
合并后 zhejiang
合并后 a
合并后 c
合并后 b
选择slice(0,5)后 beijing
选择slice(0,5)后 hunan
选择slice(0,5)后 shanghai
选择slice(0,5)后 zhejiang
选择slice(0,5)后 a


三、Date对象

Date 对象用于获得和处理日期和时间。 

3.1定义日期

var myDate=new Date() ;
var myDate=new Date(2009 , 7 , 20); //2009-08-20 
var myDate=new Date(2009 , 7 , 20 , 16, 40 ,58, 999); //依次表示年月日时分秒毫秒 


3.2日期对象的方法


3.2.1toXXX方法组

toString() 把 Date 对象转换为字符串。
toTimeString() 把 Date 对象的时间部分转换为字符串。
toDateString() 把 Date 对象的日期部分转换为字符串。
toGMTString() 根据格林尼治时间,把 Date 对象转换为字符串。
toUTCString() 根据世界时,把 Date 对象转换为字符串。
toLocaleString() 把 Date 对象转换为本地时间格式字符串。
toLocaleTimeString() 把 Date 对象的时间部分转换为本地时间格式字符串
toLocaleDateString() 把 Date 对象的日期部分转换为本地时间格式字符串


3.2.2getXXX方法组


getDate() 从 Date 对象返回一个月中的某一天 (1 ~ 31)
getDay() 从 Date 对象返回一周中的某一天 (0 ~ 6)
getMonth() 从 Date 对象返回月份 (0 ~ 11)
getFullYear() 从 Date 对象以四位数字返回年份
getYear() 从 Date 对象以两位或四位数字返回年份。
getHours() 返回 Date 对象的小时 (0 ~ 23)
getMinutes() 返回 Date 对象的分钟 (0 ~ 59)
getSeconds() 返回 Date 对象的秒数 (0 ~ 59))
getMilliseconds() 返回 Date 对象的毫秒(0 ~ 999)
getTime() 返回 1970 年 1 月 1 日至今的毫秒数


3.2.3setXXX方法组

setDate() 设置 Date 对象中月的某一天 (1 ~ 31))
setMonth() 设置 Date 对象中月份 (0 ~ 11))
setFullYear() 设置 Date 对象中的年份(四位数字)
setYear() 设置 Date 对象中的年份(两位或四位数字)。
setHours() 设置 Date 对象中的小时 (0 ~ 23)
setMinutes() 设置 Date 对象中的分钟 (0 ~ 59)
setSeconds() 设置 Date 对象中的秒钟 (0 ~ 59)
setMilliseconds() 设置 Date 对象中的毫秒 (0 ~ 999)
setTime() 通过向时间原点添加或减去指定毫秒数来计算日期和时间

四、String对象

String对象表示Unicode字符的序列。
String 对象的 length 属性声明了该字符串中的字符数。
String 类定义了大量操作字符串的方法。

4.1属性


length 字符串的长度


4.2与字符串格式控制相关的方法


big()、small() 用大号字体、小字号体显示字符串。
bold() 使用粗体显示字符串。
italics() 使用斜体显示字符串。
strike() 使用删除线来显示字符串。
fontcolor() 使用指定的颜色来显示字符串。
fontsize() 使用指定的尺寸来显示字符串。
sub()、sup() 把字符串显示为下标、上标。
toLowerCase()、toUpperCase() 把字符串转换为小写、大写。
fixed() 以打字机文本显示字符串。
link() 将字符串显示为链接。
anchor() 创建 HTML 锚。


4.3与字符串内容操作相关的方法


charAt() 返回在指定位置的字符。
charCodeAt() 返回在指定的位置的字符的 Unicode 编码。
concat() 连接字符串。
fromCharCode() 从字符编码创建一个字符串。
indexOf()、lastIndexOf() 从前向后检索字符串。从后向前搜索字符串。
localeCompare() 用本地特定的顺序来比较两个字符串。
match() 找到一个或多个正在表达式的匹配。
replace()、search() 替换、检索与正则表达式匹配的子串。
slice() 提取字符串的片断。
split() 把字符串分割为字符串数组。
substr() 从起始索引号提取字符串中指定数目的字符。
substring() 提取字符串中两个指定的索引号之间的字符。

4.4应用

var strings = new String("AbcDEfG");
document.write("strings中的字符串值:");
document.write(strings);
document.write('<hr>');

document.write("strings.big()大号字体显示:");
document.write(strings.big());
document.write('<hr>');

document.write("strings.small()小号字体显示:");
document.write(strings.small());
document.write('<hr>');

document.write("strings.bold()粗体显示:");
document.write(strings.bold());
document.write('<hr>');

document.write("strings.italics()斜体显示:");
document.write(strings.italics());
document.write('<hr>');

document.write("strings.strike()删除线显示:");
document.write(strings.strike());
document.write('<hr>');

document.write("strings.fontcolor('green')指定颜色显示:");
document.write(strings.fontcolor('green'));
document.write('<hr>');

document.write("strings.fontsize(10)指定大小显示:");
document.write(strings.fontsize(10));
document.write('<hr>');

document.write("strings.sub()下标显示:");
document.write("123"+ strings.sub());
document.write('<hr>');

document.write("strings.sup()上标显示:");
document.write("123"+strings.sup());
document.write('<hr>');

document.write("strings.toLocaleLowerCase()小写显示:");
document.write(strings.toLocaleLowerCase());
document.write('<hr>');

document.write("strings.toLocaleUpperCase()大写显示:");
document.write(strings.toLocaleUpperCase());
document.write('<hr>');

document.write("strings.fixed()打字机文本显示:");
document.write(strings.fixed());
document.write('<hr>');

document.write("strings.link()链接显示:");
document.write(strings.link());
document.write('<hr>');

document.write("strings.anchor()创建HTML锚显示:");
document.write(strings.anchor());
document.write('<hr>');


document.write("strings.charAt(2)返回指定位置的字符:");
document.write(strings.charAt(2));
document.write('<hr>');


document.write("strings.charCodeAt(2)返回指定位置的字符的unicode编码:");
document.write(strings.charCodeAt(2));
document.write('<hr>');

document.write("strings.concat('higkL')连接字符串:");
document.write(strings.concat("higkL"));
document.write('<hr>');

document.write("String.fromCharCode(98)静态方法从字符编码创建一个字符串:");
document.write(String.fromCharCode(98));
document.write('<hr>');

document.write("strings.indexOf('G', 1)从指定1处开始从前向后检索字符,返回一个位置值:");
document.write(strings.indexOf('G', 1));
document.write('<hr>');

document.write("strings.lastIndexOf('G', 1)从指定1处开始从后向前检索字符,找不到指定字符位置返回-1.返回一个位置值:");
document.write(strings.lastIndexOf('G', 1));
document.write('<hr>');

document.write("strings.localeCompare('ABcdEfG'):'ABcdEfG'从第0个位置开始比较'AbcDEfG',如果两个字符串完全相同返回0,被比较的字符串ASSIC码值要小,则返回-1,大则返回1。用本地特定的顺序来比较两个字符串:");
document.write(strings.localeCompare("ABcdEfG"));
document.write('<hr>');

document.write("strings.match('[a-z]{2}'):'AbcDEfG',返回值为bc,表示匹配到了。匹配不到返回null。找到一个或多个正则表达式的匹配:");
document.write(strings.match('[a-z]{2}'));
document.write('<hr>');

document.write("strings.search('[a-z]'):'AbcDEfG',返回值为下标1,表示检索到了。匹配不到返回-1。找到一个或多个正则表达式的匹配:");
document.write(strings.search('[a-z]'));
document.write('<hr>');

document.write('strings.slice(2, 3)参数1表示开始位置,参数2表示结束位置,不包括该位置。提取字符串:');
document.write(strings.slice(2, 3));
document.write('<hr>');

document.write('strings.substring(2, 3)参数1表示开始位置,参数2表示结束位置,不包括该位置。提取字符串:');
document.write(strings.substring(2, 3));
document.write('<hr>');

以上代码输出为

strings中的字符串值:AbcDEfG


strings.big()大号字体显示: AbcDEfG
strings.small()小号字体显示: AbcDEfG
strings.bold()粗体显示: AbcDEfG
strings.italics()斜体显示: AbcDEfG
strings.strike()删除线显示: AbcDEfG
strings.fontcolor('green')指定颜色显示: AbcDEfG
strings.fontsize(10)指定大小显示: AbcDEfG
strings.sub()下标显示:123 AbcDEfG
strings.sup()上标显示:123 AbcDEfG
strings.toLocaleLowerCase()小写显示:abcdefg
strings.toLocaleUpperCase()大写显示:ABCDEFG
strings.fixed()打字机文本显示: AbcDEfG
strings.link()链接显示: AbcDEfG
strings.anchor()创建HTML锚显示: AbcDEfG
strings.charAt(2)返回指定位置的字符:c
strings.charCodeAt(2)返回指定位置的字符的unicode编码:99
strings.concat('higkL')连接字符串:AbcDEfGhigkL
String.fromCharCode(98)静态方法从字符编码创建一个字符串:b
strings.indexOf('G', 1)从指定1处开始从前向后检索字符,返回一个位置值:6
strings.lastIndexOf('G', 1)从指定1处开始从后向前检索字符,找不到指定字符位置返回-1.返回一个位置值:-1
strings.localeCompare('ABcdEfG'):'ABcdEfG'从第0个位置开始比较'AbcDEfG',如果两个字符串完全相同返回0,被比较的字符串ASSIC码值要小,则返回-1,大则返回1。用本地特定的顺序来比较两个字符串:-1
strings.match('[a-z]{2}'):'AbcDEfG',返回值为bc,表示匹配到了。匹配不到返回null。找到一个或多个正则表达式的匹配:bc
strings.search('[a-z]'):'AbcDEfG',返回值为下标1,表示检索到了。匹配不到返回-1。找到一个或多个正则表达式的匹配:1
strings.slice(2, 3)参数1表示开始位置,参数2表示结束位置,不包括该位置。提取字符串:c
strings.substring(2, 3)参数1表示开始位置,参数2表示结束位置,不包括该位置。提取字符串:c

五、Math对象

Math对象是一个数学工具,包含很多表示数学常数的静态只读属性和执行数学运算的静态方法。

E 常量 e,自然对数的底数 (约等于2.718)
LN2 返回 2 的自然对数(约等于0.693)
LN10 返回 10 的自然对数(约等于2.302)
LOG2E 返回以 2 为底的 e 的对数 (约等于 1.414)
LOG10E 返回以 10 为底的 e 的对数 (约等于0.434)
PI 返回圆周率 (约等于3.14159)
SQRT1_2 返回 2 的平方根除 1 (约等于 0.707)
SQRT2 返回 2 的平方根 (约等于 1.414)


abs(x) 返回数的绝对值
cos(x)、acos(x) 返回数的正弦、反余弦值
sin(x) 、asin(x) 返回数的正弦、反正弦值
tan(x)、atan(x) 返回角的正切、返回 -PI/2 与 PI/2之间弧度数的反正切值
atan2(y,x) 返回从 x 轴到点 (x,y) 的角度
ceil(x)、floor(x) 对一个数进行上舍入。对一个数进行下舍入。
exp(x)、log(x) 返回 e 的指数。返回数的自然对数(底为e)
max(x,y)、min(x,y) 返回 x 和 y 中的最高值
pow(x,y) 返回 x 的 y 次幂
random() 返回 0 ~ 1 之间的随机数
round(x) 把一个数四舍五入为最接近的整数
sqrt(x) 返回数的平方根


六、Global对象

全局对象是预定义的对象,作为 JavaScript 的全局函数和全局属性的占位符。
通过使用全局对象,可以访问所有其他所有预定义的对象、函数和属性。
全局对象不是任何对象的属性,所以它没有名称。它既没有构造函数,也无法实例化一个新的全局对象,它的所有成员都是静态的。

6.1全局属性


Infinity 代表正的无穷大的数值。
NaN 指示某个值是不是数字值。
undefined 指示未定义的值。


6.2全局函数


decodeURI() 解码某个编码的 URI。
decodeURIComponent() 解码一个编码的 URI 组件。
encodeURI() 把字符串编码为 URI。
encodeURIComponent() 把字符串编码为 URI 组件。
eval() 计算字符串,并把它作为脚本代码来执行。
isFinite() 检查某个值是否为有穷大的数。
isNaN() 检查某个值是否是数字。
isNaN() 函数通常用于检测 parseFloat() 和 parseInt() 的结果,以判断它们表示的是否是合法的数字。当然也可以用 isNaN() 函数来检测算数错误,比如用 0 作除数的情况。
parseFloat() 解析一个字符串并返回一个浮点数。
parseInt() 解析一个字符串并返回一个整数。

七、小结

JavaScript是一门面向对象的语言,具有自定义对象的能力。同时,它可以基于已有对象编程,包含ECMAScript的本地对象,作为宿主的浏览器运行环境提供一组浏览器对象和网页提供的对象。


本地对象是一组由ECMAScript提供的引用类型,它何ECMAScript都会实现的一些对象,与特定的脚本宿主无关。


数组对象实际上是长度动态的集合,它包含了长度属性和排序,反转,拼接等方法。


日期对象表示某个特定的时刻。可通过它的构造函数获取浏览器本机的系统时间,或指定特定的日期时间,它包含一组get方法可用于获取日期对象中的某部分信息,也可用它的一组get方法改变日期对象的某些方法,或通过它的一组to方法获得日期对象的字符串形式。


字符串对象表示0个或多个Unicode字符的序列。它包含了length属性,另有一组用于格式变换的方法和对其中的字符进行操作的方法。


全局对象包含一系列全局的属性和全局的函数,这些属性和函数可不经引用任何对象直接使用。


数学对象包含一组静态只读属性用于表示一些数学常数,另包含一组静态方法用于实现常用的数学运算。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
JS常用对象[转载]web 技术 2010-06-05 15:00:30 阅读3 评论0 字号:大小 订阅 [removed] Window For JavaScript 熟练window对象的open、close、alert、confirm、prompt、setTimeout、clearTimeout、setInterval、clearInterval、moveBy、resizeBy、scrollBy方法的使用 掌握window对象的moveTo、resizeTo、scrollTo、print方法的使用 熟练掌握window对象的status、location、name、self、opener属性的使用  Window对象是客户端javascript最高层对象之一,只要打开浏览器窗口,不管该窗口是否有打开的网页,当遇到BODY、FRAMESET或FRAME元素时,都会自动建立window对象的实例。另外,该对象的实例也可由window.open()方法创建。由于window对象是其它大部分对象的共同祖先,在调用window对象的方法和属性时,可以省略window对象的引用。例如:window.[removed]()可以简写成: [removed]()。  在窗口觖发本窗口对象的任何方法和属性时可以省去窗口的实例名称。例如给当前的myWin窗口设置status属性时,可以只用status而不用myWin.status。但是,在事件处理调用location属性、close()方法或open()方法时必须使用实例名称。 6-2-1 window对象的方法 window对象有以下方法: open close alert confirm prompt setTimeout clearTimeout setInterval clearInterval moveBy moveTo resizeBy resizeTo scrollBy scrollTo find back forward home stop print blur focus captureEvent enableExternalCapture disableExternalCapture handleEvent releaseEvent routeEvent scroll   1. open方法   语法格式: window.open(URL,窗口名称,窗口风格)   功能:打开一个新的窗口,并在窗口装载指定URL地址的网页。   说明: open方法用于打开一个新的浏览器窗口,并在新窗口装入一个指定的URL地址 ; open方法在打开一个新的浏览器窗口时,还可以指定窗口的名称(第二个参数); open方法在打开一个新的浏览器窗口时,还可以指定窗口的风格(第三个参数), 窗口风格有以下选项,这些选项可以多选,如果多选,各选项之间用逗号分隔: toolbar:指定窗口是否有标准工具栏。当该选项的值为1或yes时,表示有标准 工具栏,当该选项的值为0或no时,表示没有标准工具栏; location:指定窗口是否有地址工具栏,选项的值及含义与toolbar相同; directories:指定窗口是否有链接工具栏,选项的值及含义与toolbar相同; status:指定窗口是否有状态栏,选项的值及含义与toolbar相同; menubar:指定窗口是否有菜单,选项的值及含义与toolbar相同; scrollbar:指定当前窗口文档大于窗口时是否有滚动条,选项的值及含义与 toolbar相同; resizable:指定窗口是否可改变大小,选项的值及含义与toolbar相同; width:以像素为单位指定窗口的宽度,已被innerWidth取代; height:以像素为单位指定窗口的高度,已被innerHeight取代; outerWidth:以像素为单位指定窗口的外部宽度; outerHeight:以像素为单位指定窗口的外部高度; left:以像素为单位指定窗口距屏幕左边的位置; top:以像素为单位指定窗口距屏幕顶端的位置; alwaysLowered:指定窗口隐藏在所有窗口之后,选项的值及含义与toolbar相同 ; alwaysRaised:指定窗口浮在所有窗口之上,选项的值及含义与toolbar相同; dependent:指定打开的窗口为当前窗口的一个子窗口,并随着父窗口的关闭而 关闭,选项的值及含义与toolbar相同; hotke
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值