有没有办法在JS代码中使用某种DEBUG指令导致调试代码不包含在生产中?例子:
// #if debug
console.log('Initializing');
// #endif
var url =
// #if debug
'/foo/debug';
// #else
'/foo';
// #endif
答案 0 :(得分:4)
没有。但您可以简单地将console.log
替换为用于生产的虚拟函数:
window.console = window.console || {};
window.console.log = function() { /* do nothing */ };
然后,您只需要配置构建工具(假设您有一些),只在生产版本中包含该代码。
答案 1 :(得分:0)
好吧,你可以定义全局变量:
var DEBUG = true;
// Somewhere else:
if (DEBUG)
console.log('Initializing');
但它没有#define
等语言功能。