先给大家来个例子:

  var tmp = new Date();
    function f() {
      console.log(tmp);
      if(false) {
        var tmp='hello';
      }
    } f();

打印结果为undefined 流程如下 

var tmp = new Date();
  function f() {
    var tmp;
    console.log(tmp);
    if(false) {
      tmp='hello';
    }
  }
f();

var作用域分为全局作用域和方法级的局部作用域 let 和 const则为块级作用域 同样的方法

let tmp = new Date();
    function f() {
      console.log(tmp);
      if(false) {
        let tmp='hello';
      }
    } f();

结果为 日期数据 let tmp='hello'; 数据只作用于if 范围内。

 

posted on 2019-07-12 10:05  因过竹林逢僧话  阅读(206)  评论(0编辑  收藏  举报