ES6 入门
前言
此手册会收集尽可能多的资料来完善
1、let 和const
ES6 新增了let
命令,用来声明变量。它的用法类似于var
,但是所声明的变量,只在let
命令所在的代码块内有效。
1 | { |
const
声明一个只读的常量。一旦声明,常量的值就不能改变。
1 | const PI = 3.1415; |
上面代码表明改变常量的值会报错。
const
声明的变量不得改变值,这意味着,const
一旦声明变量,就必须立即初始化,不能留到以后赋值。
1 | const foo; |
上面代码表示,对于const
来说,只声明不赋值,就会报错。
const
的作用域与let
命令相同:只在声明所在的块级作用域内有效。
在我们开发的时候,可能认为应该默认使用 let 而不是 var,这种情况下,对于需要进行写保护的变量要使用 const。
然而另一种做法日益普及:默认使用 const,只有当确实需要改变变量的值的时候才使用 let。这是因为大部分的变量的值在初始化后不应再改变,而预料之外的变量的修改是很多 bug 的源头。
1 | // 例子 1-1 |
2、模板字符串
1.模板字符串
ES6中提供了模版字符串,**用`(反引号)标识,用${}将变量括起来**
需要拼接字符串的时候尽量改成使用模板字符串:
1 | // 例子 2-1 |
在模板字符串中,空格、缩进、换行都会被保留:
2. 标签模板
1 | let message = ` |
出于可读性或者其他原因,我希望书写的时候是换行的,但是最终输出的字符是在一行,这就需要借助模板标签来实现了,我们尝试写一个这样的函数:
1 | // oneLine 第一版 |
实现原理很简单,拼合回去然后将多个空白符如换行符、空格等替换成一个空格。
使用如下:
1 | let message = oneLine ` |
Continue!
Reference
【1】阮一峰 ES6入门
【2】掘金 ES6完全手册