我在这里和那里看到了几个表达式的三分号 它有任何合理的效果吗?
我看到的最接近解释的是,它告诉Dean Edwards压缩器忽略该线。
;;; var someVar = 'Rebel';
答案 0 :(得分:26)
它让人们在StackOverflow上提问。
除此之外,它什么也没做。
答案 1 :(得分:18)
无。绝对没有。
三个分号,十个分号,一百个分号,它们都被解释为相同的结果:没有。
答案 2 :(得分:11)
以三个分号开头的行用于调试代码:它表示这些行不应出现在生产环境中。 Javascript通过压缩器或其他算法运行,在创建优化的JS文件时删除;;;
行。
;;; console.log("only run this line when debugging!");
如上所述,三个分号在Javascript中实际上什么也没做:它只是结束三个连续的空语句。如果使用了实际评论
// console.log("only run this line when debugging!");
然后,当您想要进入调试模式时,您必须进入并手动删除所有注释,然后在完成后进入并将它们放回去。另一种解决方案是创建一个DEBUG
变量并将所有调试行包装在一个条件中:
var DEBUG = true;
if(DEBUG){
console.log("only run this line when debugging!");
}
但这有点麻烦,实际上会为您的Javascript文档添加不需要的代码。当然,您可以通过压缩器运行JS以删除DEBUG
条件,但此时您也可以使用;;;
方法,这更简单。
请参阅this question了解这方面的真实例子。顺便说一句,我认为语法来自emacs。
答案 3 :(得分:8)
结束一次空的陈述。
答案 4 :(得分:1)
它们是空的陈述,没有任何效果。除非语法需要语句,否则解释器或编译器可能会删除它们。