最近没事喜欢看看,一些js库的源码,结果发现库前不是加一个!就是加+或者一个(),心中猜出个大概知道这个是让函数自动执行,可是这么多符号达到同一个目的,原理是什么呢,下面做一下剖析: 先从IIFE开始介绍 IIFE(Imdiately Invoked Function Expression 立即执行的函数表达式) function(){ alert('IIFE'); } 把这个代码放在console中执行会报错 因为这个是一个匿名函数,要想让它正常运行就必须给个函数名,然后通过函数名调用. 好了…