博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
js中()()问题
阅读量:6646 次
发布时间:2019-06-25

本文共 601 字,大约阅读时间需要 2 分钟。

1 var aa=function(){}();2 3 var bb=(function(){})();

今天被问到这个问题,这段js有撒区别。

总结一下,两个函数都是立即执行的意思。但是不同之处是执行的顺序,aa函数先认识函数,然后认识后面的小括号。

bb函数是先将匿名函数,执行成为函数,然后在执行。bb函数常用于js包开发。

自执行匿名函数:

  • 常见格式:(function() { /* code */ })();
  • 解释:包围函数(function(){})的第一对括号向脚本返回未命名的函数,随后一对空括号立即执行返回的未命名函数,括号内为匿名函数的参数。
  • 作用:可以用它创建命名空间,只要把自己所有的代码都写在这个特殊的函数包装内,那么外部就不能访问,除非你允许(变量前加上window,这样该函数或变量就成为全局)。各JavaScript库的代码也基本是这种组织形式。

总结一下,执行函数的作用主要为 匿名 和 自动执行,代码在被解释时就已经在运行了。

其他写法

(function () { /* code */ } ()); !function () { /* code */ } (); ~function () { /* code */ } (); -function () { /* code */ } (); +function () { /* code */ } ();

转:

转载地址:http://oaevo.baihongyu.com/

你可能感兴趣的文章
Linux Shell 程序调试
查看>>
PHP操作XML(三)——RSS
查看>>
Oracle Dimension
查看>>
Start Developing iOS Apps Today系列(一)
查看>>
Puppet整合Foreman(二):安装puppet
查看>>
使用客户端登陆ftp 500 OOPS: cannot change directory:/root
查看>>
docker 私用仓库Harbor搭建及配置
查看>>
我的友情链接
查看>>
Spring 数据库处理Clob/Blob大对象
查看>>
我的友情链接
查看>>
理解HTTP协议
查看>>
python学习感言
查看>>
Android中实现图片的异步加载学习笔记
查看>>
2015/5/4 谈谈进程、线程
查看>>
我的友情链接
查看>>
Linux计划任务
查看>>
今天做了一张手机原型图,跟大家分享一下
查看>>
巧用分类信息做网站的口碑推广
查看>>
深夜过后的寂静
查看>>
理解并取证:ICMPV6代替IPV4中的ARP进行IPv6的MAC地址解析
查看>>