扫码关注官方订阅号
所有的方法或函数插件,都应当以分号结尾,否则压缩的时候可能出现问题 为啥会出问题?求大神告知原理,关于压缩方面的
光阴似箭催人老,日月如移越少年。
因为压缩时为了节约空间,会去除所有空行。此时防御性分号就很重要了。
举个例子:前一个文件的内容是
var foo = function() { }
后一个文件是
(5)
压缩后生成的文件就是
var foo = function () {}(5)
于是后一个文件的内容就被当作参数传给了前一个文件中的函数,foo 就被理解为了以 5 为参数去调用前一个文件中的函数的返回结果。在这个例子中 foo 就变成了 undefined。
foo
5
undefined
加上分号就没有这个问题了。
楼上正解。除了;号还有一些+,-号之类的,它们有区别吗?
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
因为压缩时为了节约空间,会去除所有空行。此时防御性分号就很重要了。
举个例子:前一个文件的内容是
后一个文件是
压缩后生成的文件就是
于是后一个文件的内容就被当作参数传给了前一个文件中的函数,
foo就被理解为了以5为参数去调用前一个文件中的函数的返回结果。在这个例子中foo就变成了undefined。加上分号就没有这个问题了。
楼上正解。除了;号还有一些+,-号之类的,它们有区别吗?