javascript – 这些双括号在JS中做了什么?

前端之家收集整理的这篇文章主要介绍了javascript – 这些双括号在JS中做了什么?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
参见英文答案 > What do parentheses surrounding an object/function/class declaration mean? 7个
我正在阅读js忍者的书秘密,而且我经常看到这样的代码
(function(){
  something here;
  })();

为什么我们需要将函数括在括号中?为什么我们之后再添加一对括号?

解决方法

这个
(function(){
  alert('hello');
})();

虽然它是一个功能,它会自动调用,所以你不能/不能手动调用

这些对于像这样的循环很有用

这将失败,因为我将在5秒后等于9

for(var i = 0; i < 10; i++) {
   window.setTimeout(function(){
      console.log(i);
   },5000)
}

所以你可以做到这一点

for(var i = 0; i < 10; i++) {
   (function(a){
      window.setTimeout(function(){
         console.log(a);
      },5000)
   })(i);
}

也适合创建像这样的“私人”范围

(function(){
   var test = 'hello';
   console.log( test ); // 'hello'
}());

   console.log( test ); // 'undefined'

猜你在找的JavaScript相关文章