ES5声明变量(2):var 、function
ES6声明变量(6):var、function、let、const、import和class
1、let命令和const命令
(1)let和const都不存在变量提升,都是快作用域【ES6】(立马执行),const定义的常量不能被修改
(2)暂时性死区:在代码块内,使用let/const
命令声明变量之前,该变量都是不可用的.
(3)let,const不允许在相同作用域中重复声明
(4)块作用域中,允许声明函数(只在使用大括号的情况下),该函数行为类似let,在块作用域之外不可引用
2、import命令和export命令
import导入模块,export导出模块
// 全部导入
import people from './example' // 将整个模块当作单一对象进行导入,该模块的所有导出都会作为对象的属性存在
import * as example from "./example.js"
console.log(example.name)
console.log(example.getName()) // 导入部分,引入非 default 时,使用花括号
import {name, age} from './example' // 导出默认, 有且只有一个默认
export default App // 部分导出
export class App extend Component {};
3、变量解构
规则:只要等号右边的值不是对象或数组,就先将其转为对象
(1)默认值(只有当一个数组成员严格等于undefined,默认值才会生效)
(2)圆括号(可以使用圆括号的情况只有一种:赋值语句的非模式部分,可以使用圆括号。)
以上参考资料
博客园:https://www.cnblogs.com/fangsmile/p/7081194.html
《ECMAScript 6 入门》:http://es6.ruanyifeng.com/?search=import&x=0&y=0