1

我注意到Google Closure Compiler似乎可以互换使用两者。

1.

(function a() {
  window.requestAnimationFrame(function() {
    //
    a();
  });
})();

2.

(function a() {
  window.requestAnimationFrame(function() {
    //
    a();
  });
}());
4

1 回答 1

1

没有一种“闭包语法”:任何确保您构建函数表达式的语法,即编译器无法将函数表达式与函数定义的开头混淆的函数表达式,您称其为 OK。在这里,两者都有效。

例如,您可以使用

+function(){
  ...
}();

只需选择最易读且不那么令人惊讶的一个。我认为第一个,其中调用括号最明显,是最常用和预期的。

于 2013-04-04T18:39:31.420 回答