javascript基础知识.docx
《javascript基础知识.docx》由会员分享,可在线阅读,更多相关《javascript基础知识.docx(18页珍藏版)》请在冰豆网上搜索。
javascript基础知识
Javascript入门基础知识
!
--JavaScript--
什么是javascript?
Javascript是由NetscapeCommunicationCorporation(网景公司)开发的,是一种基于对象和事件驱动并具有安全性能的解释型脚本语言。
它不但可以用于编写客户端的脚本程序由客户端浏览器解释执行;还可以编写在服务端执行的脚本程序,由服务端处理用户提交的信息并动态的向浏览器返回处理结果。
由于各浏览器对JavaScript脚本支持的不一致性,因此,在进行JavaScript脚本编程时,首先应确定用户使用的浏览器类型,然后根据浏览器类型编写JavaScript脚本。
下面将介绍Netscape的Navigator浏览器和Microsoft的InternetExplorer浏览器。
1.NetscapeNavigator(网景浏览器)
NetscapeNavigator(网景浏览器)是最早也是最有影响力的网页浏览器之一,NetscapeNavigator浏览器1.0版发布于1994年12月,比微软IE1.0浏览器发布时间还早一个多月,但由于IE浏览器和微软的Windows操作系统捆绑在一起,因此对Netscape网景浏览器的市场发展造成了巨大影响,使得Netscape网景浏览器逐渐淡出主流浏览器行列。
Javascript的数据类型:
字符串型数值型布尔型对象型空置underfined
language设置所使用的脚本语言及版本
src设置一个外部脚本文件的路径位置
type设置所使用的脚本语言此属性已代替language属性
defer表示当HTML文档加载完毕后在执行脚本语言
在使用JavaScript进行程序开发时,要求使用的硬件开发环境如下:
首先必须具备运行Windows98、WindowXP、WindowsNT及其ServicePack6a或更高版本,Windows2000及其ServicePack2或更高版本的基本硬件配置环境。
至少32MB以上的内存。
640*480分辨率以上的显示器。
至少20MB以上的可用硬盘空间。
JavaScript在HTML中的使用:
1、在页面中直接嵌入JavaScript
2、链接外部JavaScript
在HTML文档中可以使用标记将JavaScript脚本嵌入到其中,在HTML文档中可以使用多个
实例:
使网页具有动态交互功能制作网页特效对用户的不同事件作出响应
alert(newDate());
脚本代码的位置
可以使用多个script嵌套
javascrpit的保留关键字:
标识符不能以数字开头不能是javascrpit的保留关键字
严格区分大小写
基本数据类型与常量
varname="111111111"
alert(var+"22222222222");
算数运算符
加法运算符或正值运算符+
减法运算符或负值运算符-
乘法运算符*
除法运算符/
求模运算符%
将变量值加1后在将结果负值给这个变量++
分为:
++ii++
将变量减一后在讲结果负值给变量--
程序的流程控制
顺序结构
switvh选择语句:
switch(表达式)
{
case取值1:
语句块1
break;
...
default:
语句块n+1
break;
}
while(条件表达式)
{
执行语句块
}
dowhile语句
do
{
执行语句块
}
while(条件表达式语句);
for循环语句
for(varx=1;x<10;x++)
{
output=output+"x="+x;
}
alter(output);
if条件选择语句
if(条件语句)
{
执行语句块1
}
else
{
执行语句2
}
变量=布尔表达式?
语句1:
语句2;
y=x>0?
x:
-x;
数据类型的转换
数据类型转换函数
eval(字符串):
将字符串参数转换成相应的数值
parseInt(字符串[底数]):
将字符串换成指定底数的数值
parseFloat()
--函数--
函数的作用:
函数的定义与调用
格式如下:
function函数名(参数列表)
{程序代码
return表达式;
}
对函数进行调用的方式
1.函数名{传递给函数的参数1,}
2.变量=函数名[传递给函数的参数1,]
3.对于有返回值的函数调用,也可以在程序中直接使用返回的结果列如:
alter("sum="+square(2,3));
全局变量及局部变量
varmsg="全局变量";
functionshow()
{
msg="局部变量";
}
show();
alert(msg);
alert(msg)此处msg的值为"局部变量"
局部变量会覆盖同名的全局变量
参数个数可变的函数
functiontestparams()
{
varparams="",
for(vari=0;iparams=params+""+arguments[i];
alert(params);
}
testparams("abc",123);
testparams(123.456,"abcc");
在函数内部使用arguments对象来访问调用程序传递的所有参数
创建动态函数
创建动态函数的基本语法格式:
varvarName=newFunction(argument1,..,lastArgument);所有的参数都必须是字符串型的最后的参数必须是这个动态函数的功能程序代码
列:
varsquare=newFunction("x","y","varsum;sum=x*x+y*y;returnsum;");
alert(square(2,3));
动态函数有什么作用,在什么情况下使用动态函数?
javascript的系统函数
------
encodeURI方法返回对一个url字符串编码后的结果
decoderURI将一个已经编码的URL字符串解码成最初的字符串并返回值
parselnt方法
将一个字符串按指定的进制转换成一个整数,语句格式为:
parselnt(numString,[radix]).如果没有指定第二个参数,则前缀为'0x'的字符串被试为16进制,前缀为'0'的字符串被视为八进制,所有其他字符串都被视为是十进制。
parseFloat方法
将一个字符串转换成对应的小数
isNaN方法
用于检测parselnt和parseFloat方法的返回值是否为NaN
escape方法
unescape方法
将一个用escape方法编码的结果字符串解码成原始字符返回
对象
对象与对象实例:
new实例化对象
内置函数:
parseInt(StringNum,[n])
将首位为数字的字符串转换为数字,如果不是以数字开头的将返回NAN值
parseFloat(StringNum)
将首位为数字的字符串转换为浮点型数字,如果不是以数字开头的将返回NAN值
isFinite(Num)函数
检验某表达式是否为无穷大;如果是则返回true不是则返回值为false
encodeURI(url)
改函数主要用于返回一个URL字符串编码后的结果。
decodeURI(url)
该函数主要用于将以编码为URI的字符串解码成最初的字符串并返回。
列:
内置函数的调用
/*
parseint()函数
*/
varnum1="123abcd"
varnum2="abc123"
document.write("使用parseint()函数
");
document.write("123abc转换结果为:
"+parseInt(num1)+"
");
/*
parseFloat()函数
*/
varnum3="123.2343abs"
document.write("使用parseFloat()函数
");
document.write("123.2343abc转换结果为:
"+parseFloat(num3)+"
");
居中显示框架页
JavaScript内部对象:
Object对象提供了对象的最基本功能,这些功能构成了所有其他对象的基础。
Object对象提供了创建自定义对象的简单方式,不需要再定义构造函数。
可以在程序运行时为JavaScript对象随意添加属性,因此使用Object对象能很容易地创建自定义对象。
1.创建Object对象
语法:
obj=newObject([value])
参数说明:
obj:
必选项。
要赋值为Object对象的变量名。
value:
可选项。
任意一种JScript基本数据类型。
(Number、Boolean、或String。
)如果value为一个对象,返回不做改动的该对象。
如果value为null、undefined,或者没有给出,则产生没有内容的对象。
Object对象提供了对象的最基本功能,这些功能构成了所有其他对象的基础。
Object对象提供了创建自定义对象的简单方式,不需要再定义构造函数。
可以在程序运行时为JavaScript对象随意添加属性,因此使用Object对象能很容易地创建自定义对象。
1.创建Object对象
语法:
obj=newObject([value])
参数说明:
obj:
必选项。
要赋值为Object对象的变量名。
value:
可选项。
任意一种JScript基本数据类型。
(Number、Boolean、或String。
)如果value为一个对象,返回不做改动的该对象。
如果value为null、undefined,或者没有给出,则产生没有内容的对象。
2.Object对象的属性
(1)prototype属性
返回对象类型原型的引用。
objectName.prototype
objectName参数是对象的名称。
用prototype属性提供对象的类的一组基本功能。
对象的新实例“继承”赋予该对象原型的操作。
(2)constructor属性
表示创建对象的函数。
object.constructor
必选项object是对象或函数的名称。
3.Object对象的方法
(1)toLocaleString方法
返回一个日期,该日期使用当前区域设置并已被转换为字符串。
dateObj.toLocaleString()
必选项dateObj为任意的Date对象。
toLocaleString方法返回一个String对象,这个对象中包含了用当前区域设置的默认格式表示的日期。
对于公元1601和1999之间的时间,日期格式要按照用户的“控制面板”中“区域设置”来确定。
F对于此区间外的其他时间,使用toString方法的默认格式。
(2)toString方法
返回对象的字符串表示。
objectname.toString([radix])
参数说明:
objectname:
必选项。
要得到字符串表示的对象。
radix:
可选项。
指定将数字值转换为字符串时的进制。
toString方法是JavaScript所有内部对象的一个成员方式。
它的操作依赖于对象的类型:
String对象是动态对象,需要创建对象实例后才能引用该对象的属性和方法,该对象主要用于处理或格式化文本字符串以及确定和定位字符串中的子字符串。
1.创建String对象
String对象用于操纵和处理文本串,可以通过该对象在程序中获取字符串长度、提取子字符串,以及将字符串转换为大写或小写字符。
varnewstr=newString(StringText)
参数说明:
newstr:
创建的String对象名。
StringText:
可选项。
字符串文本。
例如,创建一个String对象。
varnewstr=newString(“欢迎使用JavaScript脚本”)
2.String对象的属性
在String对象中有3个属性,分别是length、constructor和prototype。
下面对这几个属性进行详细介绍。
(1)length属性
该属性用于获得当前字符串的长度。
stringObject.length
参数说明:
stringObject:
当前获取长度的String对象名,也可以是字符变量名。
(2)constructor属性
该属性用于对当前对象的函数的引用。
Object.constructor
参数说明:
Object:
String对象名或字符变量名。
(3)prototype属性
该属性可以为对象添加属性和方法。
object.prototype.name=value
参数说明:
object:
对象名或字符变量名。
Name:
要添加的属性名。
Value:
添加属性的值。
在web开发过程中,可以使用JavaScript的Date对象(日期对象)来实现对日期和时间的控制。
如果想在网页中显示计时时钟,就得重复生成新的Date对象来获取当前计算机的时间。
用户可以使用Date对象执行各种使用日期和时间的过程。
1.创建Date对象
日期对象是对一个对象数据类型求值,该对象主要负责处理与日期和时间有关的数据信息。
在使用Date对象前,首先要创建该对象,其创建格式如下:
dateObj=newDate()
dateObj=newDate(dateVal)
dateObj=newDate(year,month,date[,hours[,minutes[,seconds[,ms]]]])
Date对象语法中各参数的说明如表所示。
.Date对象的属性
Date对象的属性有constructor和prototype,它们与String对象中的属性语法相同。
在这里介绍这两个属性的用法。
(1)constructor属性
例如,判断当前对象是否为日期对象。
代码如下:
varnewDate=newDate();
if(newDate.constructor==Date)
document.write("日期型对象");
运行结果:
日期型对象。
(2)prototype属性
例如,用自定义属性来记录当前日期是本周的周几。
代码如下:
varnewDate=newDate();//当前日期为2008-1-3
Date.prototype.mark=null;//向对象中添加属性
newDate.mard=newDate.getDay();//向添加的属性中赋值
alert(newDate.mard);
运行结果:
4。
3.Date对象的方法
Date对象是JavaScript的一种内部数据类型。
该对象没有可以直接读写的属性,所有对日期和时间的操作都是通过方法完成的。
3.event对象的属性
(1)altLeft属性
设置或获取左Alt键的状态。
检索左Alt键的当前状态,返回值true表示关闭,false为不关闭。
[window.]event.altLeft
由于altLeft属性是boolean值,因此可以将该属性应用到if语句中,根据获取的值不同而执行不同的操作。
(2)ctrlLeft属性
设置或获取左Ctrl键的状态。
检索左Ctrl键的当前状态,返回值true表示关闭,false为不关闭。
[window.]event.ctrlLeft
由于ctrlLeft属性是boolean值,因此可以将该属性应用到if语句中,根据获取的值不同而执行不同的操作。
(3)shiftLeft属性
设置或获取左Shift键的状态。
检索左Shift键的当前状态,返回值true表示关闭,false为不关闭。
[window.]event.shiftLeft
由于这3个属性的值同样也都是boolean类型的,所以也可以将它们组合成一个条件在if语句中应用,并且也可以和altKey、ctrlKey和shiftKey属性同时使用。
(4)button属性
设置或获取事件发生时用户所按的鼠标键。
[window.]event.button
(5)clientX属性
获取鼠标在浏览器窗口中的X坐标,该属性是一个只读属性,即只能获取到鼠标的当前位置,不能改变鼠标的位置。
[window.]event.clientX
(6)clientY属性
获取鼠标在浏览器窗口中的Y坐标,该属性是一个只读属性,即只能获取到鼠标的当前位置,不能改变鼠标的位置。
[window.]event.clientY
(7)X属性
设置或获取鼠标指针位置相对于CSS属性中有position属性的上级元素的X轴坐标。
如果没有CSS属性中有position属性的上级元素,默认以body元素作为参考对象。
[window.]event.X
Folder对象可以获取服务器端指定文件夹的相关属性,它与File对象的实现过程基本相同。
只是Folder对象针对的是文件夹,File对象针对的是文件。
1.动态创建Folder对象
使用Folder对象对指定文件夹的所有属性进行访问,必需要创建Folder对象,该对象是通过FileSystemObject对象的GetFolder()方法来创建的。
GetFolder()方法根据指定的路径中的文件返回相应的Folder对象。
object.GetFolder(filespec)
参数说明:
object:
必选。
FileSystemObject的名称。
Filespec:
必选。
指定文件夹的路径(绝对或相对路径)。
例如,将qq.txt文件以File对象进行实例化。
代码如下:
varfso=newActiveXObject("Scripting.FileSystemObject");
vars=fso.GetFolder("E:
\\word\\JavaScript");
Functio