美文网首页
BlackLeft老师讲课了——javascript中const

BlackLeft老师讲课了——javascript中const

作者: 左冷禅 | 来源:发表于2019-04-09 21:41 被阅读0次


    一.开场白

    这是一篇给对const、var、let不怎么了解的人进行讲解的文章。

    二.const\let\var是什么

    MDN上面说明了const是什么,const是指常量,什么是常量呢?我们就不讲解了,可以自己在网上查常量的定义。我们继续讲,常量是块级作用域,什么是块级作用域呢?你可以简单理解成在"{}"大括号内部就是块内部。我们继续,const它很像使用let语句定义的变量。let是什么我们之后讲解,继续介绍我们的const常量的值不能通过重新赋值来改变,并且不能够重新声明。如果你在代码里面写:

    const testNumber = 22;

    testNumber = 22;//这是一个会报错的地方

    这就不对了,因为const修饰的变量不能够重新赋值。

    接下来我们看一下MDN上怎么说let的,let语句声明一个块级作用域的本地变量,这可以怎么理解呢?个人的理解是指它是只在"{}"大括号中才能够有用的内容。比如我们写一个函数的例子,每一个"{}"可以当做一个块,而let就是可以用在其中:

    function letTest(){

    let x = 1;

    if(true){

    let x = 2;

    console.log(x);//2

    }

    console.log(x);//1

    }

    理解出来了什么没?if语句中"{}"内部定义x和函数内部定义的x根本不是一个x,所以这个就是let。接下来继续讲讲我们的let,它还这样定义了,可选的将其初始化为一个值,也就是说我们可以定义,也可以不定义。接下来讲一下我们最常见的var吧

    var在MDN中怎么定义的呢?MDN上说了,var声明语句声明一个变量,并可选的将其初始化为一个值,我们就简单的理解一下,var就是声明一个变量,并且可以将它进行赋值,也可以不赋值。如果我们不赋值呢?那么它将会有一个默认的值,默认值是undefined。赋值的话,就是你想赋值什么就可以赋值什么。那么var的作用域是什么呢?根据情况而定——用var声明的变量的作用域是它当前的执行上下文,它可以是嵌套的函数,也可以是声明在任何函数外的变量。如果你重新声明一个JavaScript变量,它将不会丢失其值。我们来理解一下这段话,作用域是它的当前的执行上下文,那么我们可以理解这里所谓的上下文,好了你不要使劲的钻牛角尖,你就理解成整个代码部分得了(这里不确定是不是误人子弟)继续扯我们的var,我们的var可以说是在任何作用域中都使用也没问题。“如果你重新声明一个JavaScript变量,它将不会丢失其值”这句话怎么理解呢?其实就是如下:

    var test = 5;  //此时test是不是5了呢,对没错,然后继续

    var test;

    var test;

    var test;

    是的你没有看错,就是这么鲨雕,不断地重新声明它依然还是5。这句话地意思就是这样。现在是不是都差不多基本地了解了这个const还有let还有var了呀?

    3.怎么用?

    你想问我怎么用?我只想说,你爱怎么用怎么用,别问这种问题!啊呸!

    本内容纯原创,转载请标明出处————————————作者:BLackLeft    日期:2019年4月9日

    相关文章

      网友评论

          本文标题:BlackLeft老师讲课了——javascript中const

          本文链接:https://www.haomeiwen.com/subject/nmdwiqtx.html