javascript - 为什么 Twitter 在其嵌入代码中使用 !function 语法

标签 javascript

我正在查看 Twitter 的嵌入式代码,发现他们正在使用 !function。虽然我知道这评估为 false,但我想知道它有什么意义。

这里是我指的代码:

!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");

最佳答案

保存一个字节。这是调用该函数的最短方法。替代方案是:

(function(){...})();

注意 Twitter 使用的语法:

!function(){...}(params);

这意味着他们将调用函数的长度减少了一个字节。

编辑:事后思考:它也非常清楚地表明您正在调用匿名函数。

关于javascript - 为什么 Twitter 在其嵌入代码中使用 !function 语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8729661/

相关文章:

javascript - ${...} 语法在 Angular 中意味着什么?大括号前面的货币符号?

javascript - jQuery 在同一个函数上绑定(bind)each() 和click()

javascript - 与谷歌地图 API 的标记数组作斗争

javascript - 无法诊断 jQuery 错误 : "Object [object Object] has no method"

javascript - javascript中树的广度优先遍历

javascript - 如何通过 npm 安装谷歌地图?

javascript - ionic 列表中的图标不可点击

javascript - 将表达式分配给变量并在 ng-class 中使用?

javascript - 将 UNIX 时间戳差异转换为分钟

javascript - 获取给定系列的倒序数