- let定义变量
- const定义常量,不推荐用于定义对象
- 先定义后使用;因为不存在变量提升,否则报错,产生暂时性死区。
const a = 1; console.log(a);
- 在对应的块级作用域下使用
{ let a =1; console.log(a); }
- 不允许重复定义
- 6种定义变量的方式
var
,function
,let
,const
,import
,class
允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构,如:
var [a, b, c] = [1, 2, 3];
let [ , , third] = ["foo", "bar", "baz"];
third // "baz"
let [x, , y] = [1, 2, 3];
x // 1
y // 3
let [head, ...tail] = [1, 2, 3, 4];
head // 1
tail // [2, 3, 4]
let [x, y, ...z] = ['a'];
x // "a"
y // undefined
z // []
用途
- 交换变量的值
- 从函数返回多个值
- 函数参数的定义
- 提取JSON数据
- 函数参数的默认值
- 遍历Map结构
- 输入模块的指定方法
const { SourceMapConsumer, SourceNode } = require("source-map");