JS中变量

有一点要注意,用var操作符定义的变量将成为定义该变量的作用域中的局部变量。也就是说,如果在函数中使用var定义一个变量,那么这个变量在函数退出后就会被销毁。

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
<script>
    function outer()
    {
        var localVal = 30;//局部变量
        return localVal;
    }
   alert(outer());
    alert(localVal);//控制台报错localVal is not defined
</script>

</body>
</html>

下面这个例子省略了var操作符,则localVal成了全局变量。这样,只要调用过一次outer()函数,这个变量就有了定义,就可以在函数外部的任何地方被访问到。

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
<script>
    function outer()
    {
         localVal = 30;//全局变量
        return localVal;
    }
   alert(outer());
    alert(localVal);
</script>

</body>

虽然省略了var操作符可以定义全局变量,但是不推荐这样做。因为在局部作用域中定义的全局变量很难维护。

在函数里面定义的不管是局部变量还是全局变量,都必须函数经过调用后才会创建,否则的话控制台会报错,说没有定义。所以如果有意的忽略了var操作符,把它当全局变量用,但是他不是马上就有定义,必须经过调用后才有,这样容易造成混乱。

var messege = “hi”,

     found = false,

  age = 29;这样定义也是对的,换行和缩进不是必须得,为了提高可读性

原文地址:https://www.cnblogs.com/zhuni/p/4704520.html