变量的作用域

/*
* 1、本应匿名的函数如果设置了函数名,在外面还是无法调用,但是在函数里面是可以使用的
* 2、而且类似于创建常量一样。这个名字存储的值不能再被修改
*/

  var b = 10;
  (function b() {
    b = 20;
    console.log(b)
  })();
  console.log(b)
/* 改变代码使结果为:20 和 10 */

   里面的 b 一定需要是私有的,不能是全局的 (var let const / 改为形参)
    var b = 10;
    (function b() {
      const b = 20;
      console.log(b)
    })();
    console.log(b)

    var b = 10;
    (function b(b) {
      b = 20;
      console.log(b)
    })();
    console.log(b)
posted @ 2020-04-02 20:29  YuTing-721  阅读(142)  评论(0编辑  收藏  举报