web每日一题

2020/4/15前

         var a=0;
         if(true){
            consoel.log(a,window.a);//函数提升,是块级作用域,输出function a 和0
            a=1;//取作用域最近的块级作用域的function a,且被重置为1了,本质又是一个变量的复制
            console.log(a,window,a);//a是指向块级作用域的a,输出1和0
            function a(){} //函数的声明,将执行函数的变量的定义同步到函数级的作用域。
            console.log(a,window.a);//输出1和1
            a=21;//仍然是函数定义块级作用域的a,重置为21
            console.log(a,window.a);//输出为函数提升的块级作用域的a,输出21,1
            console.log("里面",a);
        }
        console.log("外部",a);

2020/4/15

   let num=10;
   const increaseNumber =() =>num++;
   const increasePassedNumber = number =>number++;
   const num1 = increaseNumber();
   const num2 = increasePassedNumber(num1);
   //输出num1,num2的值?
   console.log(increaseNumber());   //11
   console.log(increasePassedNumber(num1));   //10
   console.log(num1);   //10
   console.log(num2);   //10

你可能感兴趣的:(前端)