它有什么作用? (功能(){...}());

时间:2011-06-25 14:49:34

标签: javascript facebook

当我看到以下不理解的语法时,我正在阅读facebook javascript SDK :( function(){...}()); 有谁知道它做了什么?

<div id="fb-root"></div>
<script>
  window.fbAsyncInit = function() {
    FB.init({appId: 'your app id', status: true, cookie: true,
             xfbml: true});
  };
  (function() {
    var e = document.createElement('script'); e.async = true;
    e.src = document.location.protocol +
      '//connect.facebook.net/en_US/all.js';
    document.getElementById('fb-root').appendChild(e);
  }());
</script>

1 个答案:

答案 0 :(得分:11)

它是一个匿名函数,在声明后立即被调用。它用于创建局部变量而不会破坏全局范围。变量e在功能块

之外不可见,也不可访问