00:01
接下来呢,我们先来学习一下ES6 es6的全称呢是ecma script6.0,就是ecma script第六版,它呢其实是javascript语言的标准,也就是javascript只是对他的一个实现,而且呢,现在基本上是每年都有一个版本,我们说的这个ECMA6就是一五年发布的这个第六版,包括呢有ES7 es8 es9,他们分别都是在一六年,一七年,一八年发布的这个标准,那这个标准呢,规定了一些新的语法特性,这语法特性在我们后来编写代码的时候呢,会大量使用,所以呢,我们需要熟悉一下,包括ecma的这些前身发展历史,大家随便百度呢都可以知道,我们呢只需要知道一句话,Ecma script它是浏览器的脚本语言的规范,也就是它是标准,而我们javascript则是实现,就类似于我们Java里边。
01:01
JDBC是标准,My circle口各种驱动,Orac口驱动是实现,类似于我们USB3.0是标准,我们电脑上的各种口是实现。那接下来呢,我们就来创建一个项目,来体会我们这个ES6的一些语法新特性,打开Vs code。这里边呢,人人fast view是我们之前搭建的后台管理系统的脚手架工程,这个不要动,我们呢,在这儿打开文件夹,我们创建一个新项目,我们新建一个文件夹。新建一个文件夹,这个文件夹里边呢,我们来写一个ES6来就来选择它,我们在这里边呢,来使用一下。好,在这里我们先来体会第一个,我们先来创建第一个是let,我们先来体会let的使用,来就来创建一个HTML,而且呢,快捷键shift加叹号直接回车,在这一块呢,就会生成一段HTML的这个文档,我们呢先来体会第一个新特性,Let生命变量,首先呢,我们以前生命变量我们都是使用Y关键字,比如A等于一,这个我们用的多,现在呢,我们ES6里边也可以使用let来声明变量,那它跟Y有什么区别呢?我们把这一段代码复制来可以看一下。
02:16
首先呢,我们来说let声明的变量,它有严格的作用域,而Y呢会越狱。举一个例子,这个大括号是一段,一个代码块,在代码块里边呢,声明了一个,用Y声明了A等于一,Let声明了B等于二,如果在代码块的外边,我们consolo在控制台打印,AA可以打印出来,而B呢,就会报错,说b not divide。因为let声明的变量不会越狱,我们可以来右键open with live serve f12看一下控制台。来我们发现呢,这B就开始报错了,那这是我们let的第一个特性,接下来我们来看它的第二个特性。我们使用like呢只能声明一次,而Y呢可以多次声明变量,我们可以来看一下这段代码,我们的Y声明了一次M等于一,我们又用Y说了一次M等于二,那这个编译呢,不会报任何的错误一,而且都是完成的,我们可以来测试一下F12看控制台,那么这一块呢,没有错误,二三都打印出来,但是呢,如果Lett声明的这个变量N,如果我们再声明一次,我们保存们再来看一下控制台,我们看到这个N已经被声明了,所以呢,我们let不能多次声明同一个变量,我们把它注掉,现在呢就可以不报错了,不用在这open with live server再重新打开,我们只需要来到控制台这再看一下就好了,因为这个live server插件装了以后,只要一修改页面,我们这个页面呢,就会实时的刷新好,这是let的第二个特点,诶变量呢,只能声明一次。
03:54
还有呢,它的第三个特点,这个let呢,不存在变量提升,而哇会变量提升,我把这一段代码复制来,大家看一下,可以把以前的先注掉,就不影响我们这个控制台了。好,现在呢,我们看到Y呢,声命变量,我们是在后边X等于十,但是呢,我们在前面conslo给控制台打印的时候呢,我们现在还没有它会打印on fight,而我们这个如果是用let生命的变量,你要提前要用,它会说没有定义,就说Y呢会存在变量提升,我们看一下Y呢是onfi,而let呢会报错,Y没有定义,这是我们说的let那一句话,那么后来呢,经常会使用let来声明一个变量。
04:39
大家要习惯这种语法就行,那除了习惯let,声明变量呢,大家还要习惯另外一个叫cost,它呢也能声明变量,只不过声明的是只读变量,也就是我们的常量,而且呢,当我们看声明的常量,一旦声明之后,都是不允许改变的,比如我们把这段代码呢复制过来。
05:01
我们CTRLV粘在这,我们看C呢,我们声明了一个A等于一,但是我想在下边把A变成三就会报错,我们可以来看一下控制台,诶这一块呢,就会有这个报错,所以说呢,这个cost和light是后来我们经常要用到的两个关键字,大家得习惯。
我来说两句