What is !function in javascript?
本问题已经有最佳答案,请猛点这里访问。
我在谷歌标记管理器中有这个代码:
1 2 3 4 5 6 7 8 9 10 11 | <!-- Facebook Pixel Code --> !function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function(){n.callMethod? n.callMethod.apply(n,arguments):n.queue.push(arguments)};if(!f._fbq)f._fbq=n; n.push=n;n.loaded=!0;n.version='2.0';n.queue=[];t=b.createElement(e);t.async=!0; t.src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(window, document,'script','https://connect.facebook.net/en_US/fbevents.js'); fbq('init', '***********'); fbq('set','agent','tmgoogletagmanager', '***********'); fbq('track',"PageView"); |
我只是想知道是否有人能告诉我'!'是什么,或它做什么? 我以前从未见过它,google / duckduckgo搜索没有产生任何结果,我可以看到。
这可能意味着"不是一种功能"吗? 奇怪的!
这是编写IIFE的较短方法:
1 | !function(){console.log('foo')}() |
是1个字符短于:
1 | (function(){console.log('foo')})() |