javascript中使用var关键字声明变量和不使用var关键字声明变量,这2者的区别

使用var和不使用var的区别(全局变量/局部变量)

/*
说明:
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>

 

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐