日期:2014-05-16  浏览次数:20315 次

JavaScript基础(二)

三、变量

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 函数名 (参数列表)声明的。