日期:2014-05-16 浏览次数:20337 次
??? ?在变量声明时需要注意的是:关键字var是专门用于声明变量的,但是该关键字在变量声明的时候不是必须的。并且,在JS中,声明变量的时候不要求声明变量的类型。编译器会自动编译
??? 如果不写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的值。
<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的基本数据类型有:字符串类型、数值类型、布尔类型和其他一些特殊的数据类型
??? a.可以用单引号,也可以用双引号,没有区别。
??? b.注意转移字符的使用
??? 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来表示
??? NaN是一个特殊的数据类型表示Not a Number
??? 方法:toString(),括号中可以选择数字的进制
???
var myAge = 528; alert("myNum:"+myNum.toString(8));
?
??? 输出:528的八进制1020;
??? 方法:parseInt();可以分辨数字的进制
??? 方法:parseFloat();只能对十进制的数进行操作
??? 1.比较操作中字符串的比较是比较首字符的ASCII码
??? 2.逻辑操作等和其他语言类似
??? if;if……else;switch;
??? 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 函数名 (参数列表)声明的。