javascript中使用var关键字声明变量和不使用var关键字声明变量,这2者的区别
/*
说明:
1.使用var声明变量,在方法内部是局部变量,在方法外部是全局变量
2.没有使用var声明的变量,在方法内部或外部都是全局变量,但如果是在方
法内部声明,在方法外部使用之前需要先调用方法,告知系统声明了全局变量后方可在方法外部使用。
在函数作用域内 加var定义的变量是局部变量,不加var定义的就成了全局变量
在function内部, 加var的是局部变量, 不加var的则是全局变量;
在function外部, 不管有没有使用var声明变量,都是全局变量,在function外部,var关
键字一般可以省略,但是为了书写规范和维护方便以及可读性好,我个人不建议省略var关键字!
*/
直接po图和代码
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>javascript中使用var关键字声明变量和不使用var关键字声明变量,这2者的区别</title>
<script type="text/javascript">
/*
可见不使用var关键字声明的变量不会提前(即不使用var关键字声明的变量不会前置)
*/
// console.log(address); //报错address is not defined
//不使用var关键字声明变量
address = '江西省赣州市于都县';
//正常执行(不会报错),运行结果为***hometown=undefined
console.log('***' + 'hometown=' + hometown);
//使用var关键字声明变量
var hometown = 'I Love China,江西省赣州市于都县';
//正常执行(不会报错),运行结果为---hometown=I Love China,江西省赣州市于都县
console.log('---' + 'hometown=' + hometown);
</script>
</head>
<body>
<h1>
javascript中使用var关键字声明变量和不使用var关键字声明变量,这2者的区别
</h1>
</body>
</html>