🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
**名词解释:** ~~~ //匿名函数: (function('形参'){})('实参') //表达式: (function('形参'){}) //函数声明: function(){} ~~~ 我们用到最多的是匿名函数: (   function(o) {    //... ... }     )('water');  或者 (     function(){        //... ... }()       );//有点强制执行的味道~  例如jquery为了避免$冲突会加上: (function($) {       //... ... })(jQuery);  然后就可以愉快的输出$啦  除了分组操作符(),我们还可以用void操作符,~操作符,!操作符……他们和 `( ``function``($){ ``//do something; ``} )(jQuery);是一样的!!!!` 如: +function ($) {}(jQuery); \+ - !~在函数前面声明的作用: function(){}() 这个很少用就是调用函数, `!``function``(){` ` //... ... ` `}(); `     (  function($) {}   )( jQuery );     $是形参   jQuery是实参。这里的写法是根据()的优先级而简写的匿名函数 *相当于:* ~~~ var fn =function($){....}; fn(jQuery); 简单理解是(function($){...})(jQuery)用来定义一些需要预先定义好的函数. $(function(){ })则是用来在DOM加载完成之后运行\执行那些预行定义好的函数. 注意: 第一个定义的js函数,第二个是会立即执行的匿名函数他前面有()我们知道当js的函数后面紧跟()时会被当成调用该函数了【如:demo()】这样下面的就会报错,所以我们需要养成一个在执行函数前加上;的好习惯 ~~~ ~~~ var foo=function(){ //别人的代码 }//注意这里没有用分号结尾 //开始我们的代码。。。 ;(function(){ //我们的代码。。 alert('Hello!'); })(); ~~~ ## 防止别的框架和插件污染jquery的$ ~~~ (function($) { //jquery和原生js代码 })(jQuery); ~~~