js备忘录5

函数的全解析

原文链接:  

 http://mp.weixin.qq.com/s?src=11&timestamp=1509672643&ver=491&signature=9fDqtcKGGjLvGyS95AHuhasT7vw2ygN9BfH15xE*PztVCuNLX*XmvconyWgX-CNffBXJKwPsR*VUoH4VD5hKnceOiNfhigaxCN7yHLNEdlB-L*F-yQV4xCR3F2qpQeLX&new=1

 window.onload = function(){

  abc(1,2,3) 

  }

  function abc(){

    //虽然这里没有引用参数,但是arguments仍能捕获到

          alert(arguments.length);

  }//output 3

  *****arguments是隐藏的参数

 因为js没有代码块作用域,所以用定义一个函数做临时的命名空间

   这段话的意思是当你写了一个js模块,想要和其他人的模块进行整合,你在模块内定义的全局变量可能会和其他人的全局变量混合

 所以正确的做法是将全局变量放到函数内,不会污染全局变量

  将一个模块的代码写到一个函数里面并马上执行

原文地址:https://www.cnblogs.com/Baronboy/p/7777476.html