变量会先声明后赋值
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<script type="text/javascript">
test();
function test() {
console.log('a:',a); // 不会报错,因为变量a提前声明了
}
var a = 20;
</script>
// 上面的代码等同于下面的代码
<script type="text/javascript">
var a;
function test() {
console.log('a:',a);
}
test();
a = 20;
</script>
</body>
</html>