<body> <div class="left"></div> <div class="right">heelsj</div> </body> <script src="jquery-3.1.0.js"></script> <script> var fn = function(){ return (function($){ console.log($('.right').html()); })(jQuery) }(); </script>
首先函数会构建做用域,把jQuery传进去,能够减小做用域查找。html
若是不把jQuery当参数传递,则你使用变量jQuery/$
的时候,首先会在函数体内查找,而后进fn
查找,最后到window下查找。jquery
而你把jQuery传进去以后,则只须要在函数体内查找$
便可。函数
若是之后依赖的是Zepto/jqlite
,你只须要改下参数就好了,在这种极端的状况下,下降了代码修改和可复用成本。code