JSCOMPRESS_DEBUG变量是什么
压缩前的代码:
/** @define {boolean} */ var JSCOMPRESS_DEBUG = true;
(function () {
//Code Start
var data = [1, 2, 3, 4, 5];
for (var i = 0; i < data.length; i++) {
if (JSCOMPRESS_DEBUG) {
console.log(i);
}
data[i] += 1;
}
if (JSCOMPRESS_DEBUG) {
console.log("debug log");
}
})();压缩后的代码
(function(){for(var b=[1,2,3,4,5],a=0;a<b.length;a++)b[a]+=1})();如上代码所示,JSCompress在压缩代码时将把JSCOMPRESS_DEBUG代码块中的代码移除。配合JSCompress.ISAPI.FilterJSFile使用可以为你开发编程带来巨大便利,主要表现在:
调试日志无需在频繁的移除、增加、移除、增加
你完全可以保留他们,只要将他们置于JSCOMPRESS_DEBUG代码块内。作为程序猿,你是不是和我一样厌烦这类无意义的频繁的增删改呢?
数据模拟
一个程序、网站的开发上线难免需要涉及前端、Web甚至VC等多语种的协调维护,当其他开发人员无法及时给你提供接口,或该接口你无法在普通网页中获取时(软件嵌套的网页提供特有api)你可以使用JSCOMPRESS_DEBUG代码模拟这些数据,提高开发速度,为你节约开发总体时间。
需要注意的是,你需要在js头部申明以下信息,否则JSCompress将不识别JSCOMPRESS_DEBUG标识。
/** @define {boolean} */ var JSCOMPRESS_DEBUG = true;如你在上面的代码段中看到的,申明的JSCOMPRESS_DEBUG变量信息将被干净无痕的移除在压缩文件外。