什么是0;在javascript中表示

时间:2014-01-31 14:46:46

标签: javascript

查看grunt-strip插件以删除console.logs。我意识到它用0;替换了console.log语句。 0;有效吗?

2 个答案:

答案 0 :(得分:6)

没有任何影响,没有。 JS评估0并且没有任何结果。我的想法是删除console.*(简单地替换为空)可能会破坏这样的代码:

if(condition)
    console.log('');

functionCall();

将成为(重新格式化重点......)

if(condition)
    functionCall();

所以它被虚拟陈述所取代。

if(condition)
    0; // Does nothing

functionCall();

此外,检查控制台是否存在的代码将返回false,因为0是假的。

if(console) { // Not executed when replaced by if(0)
    // debugging action
}

答案 1 :(得分:2)

  

如何完成

     

现在,逻辑包括简单替换您选择的   具有falsy语句的节点(0)。这证明在所有方面都有效   合理的情况,减少了复杂重写的需要   逻辑。

     

稍后,重写逻辑可能很重要,但成本却很高   vs奖励现在不存在。

来源:https://github.com/jsoverson/grunt-strip