5

我有一个要包含在项目中的代码片段,我想知道为什么这样写它是否有目的,或者我是否应该清理它。有我不知道的优化技巧吗?

这是(经过清理的)代码片段。注意 a,b,c,d 传入然后在函数中赋值。

(function (a, b, c, d) {
    a = '//url/to/js/file.js';
    b = document; c = 'script'; d = b.createElement(c); d.src = a; d.type = 'text/java' + c; d.async = true;
    a = b.getElementsByTagName(c)[0]; a.parentNode.insertBefore(d, a);
})();

写完这个问题后,我找到了这个答案。这是唯一的原因吗?

4

2 回答 2

4

这样,您可以创建一个局部范围的变量,而无需使用var语句显式声明它。

IIRC 它通常被代码压缩器使用。

于 2013-05-09T17:44:29.780 回答
-1

只需在链接问题的答案中添加一些细节。有时在使用某些 API 时,它的函数会验证您传递给它们的函数。有时,由于这个原因,如果它们声明了正确数量的参数,它们只会调用您自己的函数。

于 2013-05-09T17:47:01.340 回答