作用域学习

79 阅读1分钟

/* 作用域就是变量与函数的可访问范围,即作用域控制着变量与函数的可见性和生命周期 */ /*变量的作用域有两种 全局作用域 局部作用域 */

/* a是全局变量具有全局作用域 / let a = 123; function fn1(){ / 和全局作用域相反,局部作用域一般只在固定的代码片段内可访问到 / / b是局部变量 具有局部作用域 / let b = '222' console.log(c); / console.log(a); / } / fn1() / / console.log(b); / / 最外层函数和在最外层函数外面定义的变量拥有全局作用域

   */

   /* 所有未定义直接赋值的变量自动声明为拥有全局作用域 */
   c='ccc'
    function fn2(){
        /* fn1();
        console.log(c); */
       /*  console.log(b); */
       /*  console.log(a); */
       console.log(window.top);
    }
    fn2()



    /* 
    
    所有window对象的属性拥有全局作用域

window对象的内置属性都拥有全局作用域,例如window.name、window.location、window.top等等 */

 /*    console.log(name); */
 /* window里面的地址对象 */
  /*   console.log(window.location); */
  /* window.top 也是window的一个属性 */
 /*  console.log(window.top); */