zoukankan      html  css  js  c++  java
  • ES6笔记01-声明变量

    ES6只有六种声明变量的方法:var命令和function命令,letconst命令,import命令和class命令。所以,ES6一共有6种声明变量的方法。

    const声明一个只读的常量。一旦声明,常量的值就不能改变。

    const声明的变量不得改变值,所以const一旦声明变量,就必须立即初始化,不能留到以后赋值

    在ES6中let命令,用来声明变量。用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效。

    {
      let a = 10;
      var b = 1;
    }
    a // ReferenceError: a is not defined.
    b // 1

    let不存在变量提升。let不像var那样会发生“变量提升”现象。所以,变量一定要在声明后使用,否则报错。

    console.log(test1); // 输出undefined
    console.log(test2); // 报错ReferenceError
    var test1= 2;
    let test2= 2;

    暂时性死区。只要块级作用域内存在let命令,它所声明的变量就“绑定”(binding)这个区域,不再受外部的影响。

    var tmp = 123;
    if (true) {
      tmp = 'qq'; // ReferenceError 在let声明变量前,对tmp赋值会报错
      let tmp;
    }
    ES6明确规定,如果区块中存在letconst命令,这个区块对这些命令声明的变量,从一开始就形成了封闭作用域。凡是在声明之前就使用这些变量,就会报错。
    if (true) {
      // TDZ开始
      tmp = 'abc'; // ReferenceError
      console.log(tmp); // ReferenceError
      let tmp; // TDZ结束
      console.log(tmp); // undefined
      tmp = 123;
      console.log(tmp); // 123
    }
  • 相关阅读:
    Python 内置数据结构之 set
    python 在指定的文件夹下生成随机的测验试卷文件
    Python 的 import 语句
    Python 和 R 中的一数多图
    Python 语法练习题
    python 3.x 和 2.x 不同
    R 的 plyr 包
    Python 和 R语言 中的折线图
    设置 Jupyter notebook 默认路径、启动快捷键、打开浏览器
    Python 虚拟环境
  • 原文地址:https://www.cnblogs.com/qing619/p/6197143.html
Copyright © 2011-2022 走看看