Situation One
复制代码 代码如下:
<script>
var i; //全局变量
//方法名是camel命名法
//方法里面的变量是局部变量
function sayHello(){
var x=100;
alert(x);
x++;
}
sayHello(); //输出100
alert(x); //报错,因为x是局部变量,访问不到
</script>
复制代码 代码如下:
<script>
function sayHello(){
var x=100;
if(x==100){
var y=x+1;
alert(y); //输出101
}
alert(y); //也输出101,在方法内部,不存在块级作用域,在C#中就不可以了!!!
for(var i=0;i<2;i++){
alert(i)
} //在for循环里面定义的变量是块级作用域
alert(i); //因为i是局部变量,所以输出2
}
sayHello();
</script>
关于undefined与null
有以下几种情况的,变量的值为undefined
1、变量定义,但没有赋值,则变量的值为undefined
2、调用的方法没有返回值,在返回的值为undefined
3、对象的属性值不存在,则返回值为undefined,如:document.ddd
Example1:
复制代码 代码如下:
var xx;
var yy=null;
if(xx==yy){
alert('相等');
}
else{
alert('不等');
}
复制代码 代码如下:
var xx=10
var yy='10';
if(xx==yy){
alert('相等');
}
else{
alert('不等');
}
Example3:
复制代码 代码如下:
var n='10';
switch(n){
case 10:
alert('数字');
break;
case '10':
alert('字符串');
break;
}
总结:if中的判断是判断数值,不考虑类型
新闻热点
疑难解答
图片精选