ES6语法(一)知识小结

一,块作用域

在ES6中,有块作用域的说法,比如说这种

{
	...代码...
}

在’{}‘中书写代码后,代码的生命周期将在’{}'范围内有效,针对由let和const关键字定义的变量来说具有块作用域的功能。一旦超出这个范围,就会找不到由let或const定义的变量。因为var是函数作用域变量,所以var不受块作用域的限制。

报错情况:

代码>

var a=1;
{
let b=2;
console.log(a);//第一次打印a
console.log(b);//第一次打印b
}
console.log(a);//第二次打印a
console.log(b);//第二次打印b
运行结果>


可以看见b的作用范围是{}括号内,第一次打印在{}中没有报错,输出结果和赋初始值一样,第二次打印时结果报错。
但是两次打印中,用var定义的变量没有报错,都正常输出其初始值1。
这就是块作用域,由let与const定义的变量的作用域范围只能在{}中进行,受到块的限制。

二,let与const

1,let

let和var很像,他们的共同作用就是定义变量,比如:

var a=1;
let a=1;

一样是给变量a赋值为1

使用let关键字注意一下两点:
1,不能变量声明提升(一旦定义了变量,必须在使用前定义,在使用后定义变量会报错,但是var关键字能做到)
2,不能重复声明变量

2,const

const是定义常量用的
定义后的常量不可改变,比如:

const a=1;
a=2;

运行结果如下:

定义a后就是固定值,常量。若要改变,就会报错。

使用const关键字注意一下两点
1,定义的时候有初始化值
2,初始化值不能改变(绑定不能改变)

三,模板字符串

模板字符串的使用
``符号内可以随意换行不报错
如:

let kokk='';
kokk=`
<li>${2333}
</li>
`

结果如下:

上面代码中的 {}表示的是拼接字符串的意思, 等同于+,{}里面表示要写的内容。

四,箭头函数

箭头函数用 ()=>{}做成,就是箭头指向的函数,极大地简化了function(){}这种形式的写法(少些了几个字母,偷懒可以)

const aa=()=>{
console.log(233);
}
aa();

运行结果如图:

打印结果为233,与函数内的代码一直。

使用箭头函数需注意:
1, this指向的问题(没有this,借助父级this)
2,不能使用arguments
3,不能当做构造函数

加油!

发布了16 篇原创文章 · 获赞 14 · 访问量 3639

猜你喜欢

转载自blog.csdn.net/qq_41136216/article/details/105520300
今日推荐