在js中,如果局部变量之前没有加var的时候,对应的函数执行之后,那么该变量变成了全局的。
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<script type="text/javascript" charset="utf-8">
//所谓的全局变量,指直接在<script> 标签内部定义的变量
var globalVar = "hello ,welcome to china !" ;
//局部变量,就是 不 直接在<script> 标签内部定义的变量
function fun (){
var localVar = "hello , welcome to fun function !" ;
v = "我是局部呢,还是全局呢?" ;
document.write( localVar );
}
document.write( globalVar );
document.write( "<br>" );
//document.write( localVar );
//document.write( v );
document.write( "<hr>" );
fun();
document.write( "<hr>" );
//document.write( localVar );
//因为声明时没有加 var ,当函数执行过后,会添加到全局变量中
document.write( v );
</script>
</head>
<body>
</body>
</html>