Let & const

let和const命令

  • 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");

你可能感兴趣的:(Let & const)