三、变量
1.变量的声明
在变量声明时需要注意的是:关键字var是专门用于声明变量的,但是该关键字在变量声明的时候不是必须的。并且,在JS中,声明变量的时候不要求声明变量的类型。编译器会自动编译
2.变量的使用
如果不写var,则变量的作用于将发生改变,比如
function myFunc1() { var myAge = 20; alert("In myFunc1:"+myAge); } function myFunc2() { alert("In myFunc2:"+myAge); } function myFunc() { myFunc1(); myFunc2(); }
在上面的情况下,调用myFunc()的时候,当执行myFunc1()的时候会返回20,但是当执行myFunc2()的时候则会出错。但是如果不写var:
function myFunc1() { myAge = 20; alert("In myFunc1:"+myAge); } function myFunc2() { alert("In myFunc2:"+myAge); } function myFunc() { myFunc1(); myFunc2(); }
则在调用myFunc2的时候也会返回myAge的值。
3.局部变量和全局变量
<script language="javascript"> var myAge = 25;//全局变量 function myFunc1() { var myAge = 20;//局部变量 alert("In myFunc1:"+myAge);//返回局部变量的值 } function myFunc2() { alert("In myFunc2:"+myAge);//返回全局变量的值 } function myFunc() { myFunc1(); myFunc2(); } </script>
四、JS的数据类型
和其他用语言一样,JS的基本数据类型有:字符串类型、数值类型、布尔类型和其他一些特殊的数据类型
1.字符串类型
a.可以用单引号,也可以用双引号,没有区别。
b.注意转移字符的使用
2.数值类型
a.JS能够自动的判断整形的进制而不用进行特殊的声明:
var myAge = 528;//十进制
var myAge = 01020;//八进制
var myAge = 0x210;//十六进制
上面的三个数字都表示528
b.JS支持浮点数
c.JS可以使用负数
var myAge = 7.15;
var myAge = -7.5;
d.在JS中有两个特殊的数字:正负无穷大。在JS中他们用Infinity和-Infinity来表示
3.布尔类型
4.undefined类型
5.null类型
6.NaN类型
NaN是一个特殊的数据类型表示Not a Number
五、数据类型间的转换
1.数字转换成字符串:
方法:toString(),括号中可以选择数字的进制
var myAge = 528; alert("myNum:"+myNum.toString(8));
输出:528的八进制1020;
2.字符串转化为整型数:
方法:parseInt();可以分辨数字的进制
3.字符串转化为浮点数:
方法:parseFloat();只能对十进制的数进行操作
六、JS操作符
1.比较操作中字符串的比较是比较首字符的ASCII码
2.逻辑操作等和其他语言类似
七、JS控制流程
1.条件语句:
if;if……else;switch;
2.循环语句:
while;do……while;for();
在这里注意for循环,在JS中除了传统的for循环外,还提供一种遍历for循环:
for(变量 in 对象) var cnSeason = ["春","夏","秋","冬"]; for (index in cnSeason) { document.writeln("现在现实的是:"+cnSeason[index]+"<br/>") }
八、数组
JS中数组中个元素可以使不同类型的数据["葡萄","2",new Date()]
九、函数
JS中函数是由 关键字function 函数名 (参数列表)声明的。