varconstlet 的区别

Posted xinshijue6080

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了varconstlet 的区别相关的知识,希望对你有一定的参考价值。

定义变量的三种方式

var、const、let 都可以用来定义变量,但三者之间存在区别。

var

  • var 声明变量的时候无需初始化。
  • var 声明的变量可在后面进行修改。
  • var 声明的全局变量可以被函数修改。
<!DOCTYPE html>
<html>
<head>
    <title></title>
</head>
<body>
<script type="text/javascript">
    var a;
    console.log(‘定义a变量,此时没有初始化,a的值为:‘,a);

    a = 1;
    console.log(‘修改a的值,此时a的值为:‘,a);

    function chageVarA () {
        a = 2;
        console.log(‘在函数里面修改a的值,此时a的值为:‘,a);
    }
    chageVarA();

    console.log(‘在函数执行后,全局变量a的值为:‘,a);
</script>
</body>
</html>

执行的结果为:
技术分享图片

const

  • const 声明变量时必须初始化。
  • const 声明的变量不能被修改。
<!DOCTYPE html>
<html>
<head>
    <title></title>
</head>
<body>
<script type="smy1.com text/javascript">
    const a;
    console.log(a);
</script>
</body>
</html>

执行的结果为:
技术分享图片

<!DOCTYPE html>
<html>
<head>
    <title></title>
</head>
<body>
<script type="text/javascript">
    const a = 1;
    console.log(‘初始化a变量,此时a的值为:‘,a);

    a = 2;
    console.log(‘修改a的值,此时a的值为:‘,a)
</script>
</body>
</html>

执行的结果为:
技术分享图片

let

  • let 是块级作用域。
  • 在函数内部使用let后,对函数外部的变量无影响。
 
<!DOCTYPE html>
<html>
<head>
    <title></title>
</head>
<body>
<script type="text/javascript">
    var a = 1;
    console.log(‘初始化变量a,此时a的值为:‘,a);

    function changeLet(){
        let a = 2;
        console.log(‘执行变量修改函数,在函数内容a的值为:‘,a);
    }
    changeLet();

    console.log(‘执行变量修改函数后,全局变量a的值为:‘,a);
</script>
</body>
</html>

执行的结果为:
技术分享图片





以上是关于varconstlet 的区别的主要内容,如果未能解决你的问题,请参考以下文章

这两个代码片段有啥区别?

这两个代码片段之间有区别吗?如果有,那又如何? [复制]

jquery 对象的 heightinnerHeightouterHeight 的区别以及DOM 元素的 clientHeightoffsetHeightscrollHeightoffset(代码片段

字符串插值和片段之间有啥显着区别吗?

jacript var let const 区别

Python snippet(代码片段)