JavaScript文档格式.docx
《JavaScript文档格式.docx》由会员分享,可在线阅读,更多相关《JavaScript文档格式.docx(44页珍藏版)》请在冰豆网上搜索。
body>
h1>
/h1>
scripttype="
text/javascript"
>
window.document.write("
hello,world"
);
/script>
/body>
/html>
javascript常用的函数:
alert("
显示的内容.."
);
弹出框
document.write("
数据"
//向页面输出数据...
2.JavaScript基础
2.1.语法
2.1.1.引入方式与引入位置
向HTML页面插入JavaScript的主要方法,就是使用<
script元素>
。
使用<
script>
元素的方式有两种:
直接在HTML页面中嵌入JavaScript代码和包含外部的JavaScript文件。
1.JS代码存放在标签对<
...<
中。
2.使用script标签的src属性引入一个js文件。
(方便后期维护,扩展)
例:
scriptsrc=”test.js”type=”text/javascript”>
规范中script标签中必须加入type属性。
内部
在HTML中使用JavaScript<
在页面中嵌入JavaScript<
外部
html文件
JavaScript文件
JavaScript代码
标签的位置
关于<
标签的位置,<
应该放在页面的<
元素中。
>
世界你好!
!
"
将JavaScrip标签放在head上<
注意:
1、页面上可以有多个<
标签
2、<
标签按顺序执行
3、<
标签可以出现在任意的页面位置
4、<
标签一定要写<
关闭,而不能<
script/>
这样关闭。
否则没有任何错误信息,但是没有运行结果。
2.1.2.区分大小写
与Java一样,变量、函数名、运算符以及其他一切东西都是区分大小写的。
比如:
变量test与变量TEST是不同的。
2.1.3.注释
Java:
///**//***/
HTML:
!
---->
CSS:
/**/
JavaScript:
有两种类型的注释:
单行注释以双斜杠开头(//)
多行注释以单斜杠和星号开头(/*),以星号和单斜杠结尾(*/)
2.2.常用函数
window.alert()或写为alert():
显示一个提示框显示内容。
window.document.write():
在网页的当前位置处写内容。
2.3.变量
变量是弱类型的
与Java不同,ECMAScript中的变量无特定的类型,定义变量时只用var运算符,可以将它初始化为任意值。
因此,可以随时改变变量所存数据的类型(尽量避免这样做)。
例子
varcolor="
red"
;
varnum=25;
varvisible=true;
ECMAScript中的变量是用var运算符(variable的缩写)加变量名定义的。
例如:
vartest="
hi"
在这个例子中,声明了变量test,并把它的值初始化为"
(字符串)。
每个变量仅仅是一个用于保存值的占位符而已。
定义变量时要使用var操作符(var是关键字),后跟变量名
varmessage;
这行代码定义了一个名为message的变量,该变量可以用来保存任何值,也可以直接初始化变量。
varmessage="
ECMAScript中的变量无特定的类型,定义变量时只用var运算符,可以将它初始化为任意值。
//定义变量
varcolor="
varnum=25;
varvisible=true;
同时,可以随时改变变量所存数据的类型(尽量避免这样做)。
varmessage="
hello"
message=100;
alert(message);
该案例中变量message一开始保存了一个字符串值"
然后又被一个数值100取代。
这在ECMAScript是有效的,但是不建议这样使用。
使用细节:
1、var关键字在定义变量的时候可以省略不写
2、变量名可以重复,后面的将覆盖前面的变量
3、变量的类型取决于值的类型
一条语句定义多个变量。
中间使用豆号隔开即可,可初始化,也可以不初始化。
varname="
jack"
age=28,
gender="
男"
JavaScript代码块及其代码块变量作用域
//代码块(Java)对代码进行封装隔离变量的作用域
{
vara=100;
document.write(a+"
/br>
}{
//JavaScript不会隔离变量作用域
}
2.4.数据类型
2.4.1.typeof操作符
ECMASCRIPT中有4种基本数据类型:
Undefined,Boolean,Number和String
Typeoftypeofc
关键字typeof可以获取一个变量的类型。
vara=100;
varb=3.14;
varc=true;
vard='
a'
vare="
varf;
document.write(a+"
br/>
document.write(b+"
document.write(c+"
document.write(d+"
document.write(e+"
document.write(f+"
document.write("
hr/>
document.write(typeofa+"
document.write(typeofb+"
document.write(typeofc+"
document.write(typeofd+"
document.write(typeofe+"
document.write(typeoff+"
类型的总结:
所有的数值都是number类型
字符和字符串都是string类型
布尔是boolean类型
如果一个变量没有初始化值的时候,其类型为undefined类型。
表示没有定义。
JavaScript中数值的表示形式:
vara=12;
varb=012;
//八进制10
varc=0x12;
//十六进制18
1、八进制中如果数据超过0~7,默认解析为十进制数据。
vara=09;
//无效的八进制
document.write(a+"
浮点数:
要定义浮点值,必须包括小数点和小数点后的一位数字(例如,用1.0而不是1)。
这被看作浮点数字面量。
vara=3.14;
//浮点数
varb=1.//合法,小数点后面没有数字,解析为1
varc=10.0//整数,解析为10。
由于保存浮点数需要的内存空间是保存正数值的两倍,因此ECMAScrip会将浮点数值转换为整数值。
如果小数点后没有跟任何数字和浮点数本身就是一个整数就会被转换为整数。
转换成数字
ECMAScript提供了两种把非数字的原始值转换成数字的方法,即parseInt()和parseFloat()。
只有对String类型调用这些方法,它们才能正确运行;
对其他类型返回的都是NaN。
在判断字符串是否是数字值前,parseInt()和parseFloat()都会仔细分析该字符串。
parseInt()方法首先查看位置0处的字符,判断它是否是个有效数字;
如果不是,该方法将返回NaN,不再继续执行其他操作。
但如果该字符是有效数字,该方法将查看位置1处的字符,进行同样的测试。
这一过程将持续到发现非有效数字的字符为止,此时parseInt()将把该字符之前的字符串转换成数字。
例如,如果要把字符串"
12345red"
转换成整数,那么parseInt()将返回12345,因为当它检查到字符r时,就会停止检测过程。
varnum=parseInt("
1234abc"
document.write(num);
//1234
字符串中包含的数字字面量会被正确转换为数字,比如"
0xA"
会被正确转换为数字10。
不过,字符串"
22.5"
将被转换成22,因为对于整数来说,小数点是无效字符。
varnum1=parseInt("
//返回12345
varnum2=parseInt("
//返回10
varnum3=parseInt("
56.9"
//返回56
varnum4=parseInt("
//返回NaN
document.write(num1+"
document.write(num2+"
document.write(num3+"
document.write(num4+"
alert(parseFloat("
123"
));
//可以
123.53"
012"
//12
000012"
0x20"
//结果为0
-59"
//负数
abc123"
//NaN(NotaNumber),表示不是一个数字。
123ab2c"
//结果是123,即会解析前面正确的数字,直到遇到不正确的数字。
判断是否是一个有效的数值.
isNaN
isNaN(表达式),返回的结果是否为NaN(非数值)
document.write(isNaN("
abc"
)+"
//true
//false
2.5.运算符(operator)
2.5.1.算术
加法运算符
加法运算符由加号(+)表示:
ECMAScript中的加法也有一些特殊行为:
某个运算数是NaN,那么结果为NaN。
字符串拼接
如果两个运算数都是字符串,把第二个字符串连接到第一个上。
如果只有一个运算数是字符串,把另一个运算数转换成字符串,结果是两个字符串连接成的字符串。
varresult=5+5;
//两个数字
alert(result);
//输出"
10"
varresult2=5+"
5"
//一个数字和一个字符串
55"
注意:
vara=5;
varb=true;
alert(a+b);
//6
变量是布尔类型的时候,true=1,false=0;
varb=false;
//5
乘法运算符
乘法运算符由星号(*)表示,用于两数相乘。
ECMAScript中的乘法语法与Java语言中的相同:
注释:
如果运算数是数字,那么执行常规的乘法运算,即两个正数或两个负数为正数,两个运算数符号不同,结果为负数。
除法运算符
除法运算符由斜杠(/)表示,用第二个运算数除第一个运算数:
variResult=88/11;
如果两个整数相除不能整数的时候结果还是小数。
vara=10;
varb=3;
alert(a/b);
//3.3333333333333335
2.5.2.比较
比较运算符小于、大于、小于等于和大于等于执行的是两个数的比较运算
varbResult1=2>
1//true
varbResult2=2<
1//false
比较数字和字符串
varbResult="
25"
"
3"
alert(bResult);
//输出"
true"
上面这段代码比较的是字符串"
和"
两个字符串在比较的时候比较的是两个字符串对应的字符顺序.
如果字符串与比较,会把字符串转成数字再进行比较。
字符串与字符串的比较规则是:
情况1:
能找到对应位置上的不同字符,那么就比较第一个不同字符的大小。
情况2:
不能找到对应位置上的不同字符,这时候比较的是两个字符串的长度。
document.write("
190字符串大于19字符串吗?
+("
190"
19"
//字符串与字符串比较
如果把某个运算数改为数字,那么结果就不一样了:
3;
false"
这里,字符串"
将被转换成数字25,然后与数字3进行比较,结果不出所料。
无论何时比较一个数字和一个字符串,ECMAScript都会把字符串转换成数字,然后按照数字顺序比较它们。
2.5.3.逻辑运算符
&
与
||或
非
逻辑AND运算符
在ECMAScript中,逻辑AND运算符用双和号(&
)表示:
varbTrue=true;
varbFalse=false;
varbResult=bTrue&
bFalse;
与Java中的逻辑AND运算相似,ECMAScript中的逻辑AND运算也是简便运算,即如果第一个运算数决定了结果,就不再计算第二个运算数。
对于逻辑AND运算来说,如果第一个运算数是false,那么无论第二个运算数的值是什么,结果都不可能等于true。
考虑下面的例子:
varbResult=(bTrue&
bUnknown);
//发生错误
//这一行不会执行
这段代码在进行逻辑AND运算时将引发错误,因为变量bUnknown是未定义的。
变量bTrue的值为true,因为逻辑AND运算将继续计算变量bUnknown。
这样做就会引发错误,因为bUnknown的值是undefined,不能用于逻辑AND运算。
逻辑OR运算符
ECMAScript中的逻辑OR运算符与Java中的相同,都由双竖线(||)表示
varbResult=bTrue||bFalse;
下面的真值表描述了逻辑OR运算符的行为:
运算数1
运算数2
结果
true
false
与逻辑AND运算符一样,逻辑OR运算也是简便运算。
对于逻辑OR运算符来说,如果第一个运算数值为true,就不再计算第二个运算数。
逻辑运算符NOT。
在ECMAScript中,逻辑NOT运算符与Java中的逻辑NOT运算符相同,都由感叹号(!
)表示。
通常,该运算符用于控制循环:
varbFound=false;
vari=0;
while(!
bFound){
if(aValue[i]==vSearchValues){
bFound=true;
}else{
i++;
}
}
2.5.4.赋值运算符
简单的赋值运算符由等号(=)实现,只是把等号右边的值赋予等号左边的变量。
variNum=10;
复合赋值运算是由乘性运算符、加性运算符或位移运算符加等号(=)实现的。
这些赋值运算符是下列这些常见情况的缩写形式:
iNum=iNum+10;
可以用一个复合赋值运算符改写第二行代码:
iNum+=10;
每种主要的算术运算以及其他几个运算都有复合赋值运算符:
乘法/赋值(*=)
除法/赋值(/=)
取模/赋值(%=)
加法/赋值(+=)
减法/赋值(-=)
2.5.5.三目
运算符是ECMAScript中功能最多的运算符,它的形式与Java中的相同。
variable=boolean_expression?
true_value:
false_value;
该表达式主要是根据boolean_expression的计算结果有条件地为变量赋值。
如果Boolean_expression为true,就把true_value赋给变量;
如果它是false,