最近,在javascript中使用注释时,我遇到了一些关于注释系统的问题。我想评论一个变量的名称,所以我把它放在声明名称后的同一行,如下所示:
var wk /* (website key) */ = 1;
现在我认为这是完全有效的,而且效果很好,对吧?
所以过了一会儿,我想评论一下这行的整个代码块,比如:
/*
~ more code ~
var wk /* (website key) */ = 1;
~ more code ~
*/
但这不起作用,因为当内部评论关闭时,它会关闭整个评论。这在我看来有点愚蠢。有什么方法可以在javascript中进行嵌套注释吗?
你不能嵌套块注释,但你可以这样做:
var wk = 1; // website key
或
// website key
var wk = 1;
它看起来不那么尴尬,屏蔽评论实际上只应该用于。。。好吧,方块。一般来说,它只是更好的编码风格。
或者,更好的是,让你的代码自我文档化,完全不需要注释:
var websiteKey = 1;
我最近遇到了一个问题,我在他们的wordpress博客上为一个朋友写了一些JavaScript。总之长话短说他们使用了所见即所得编辑器,重新格式化了页面来源。
所以
<script type="test/javascript">
$(function() {
// this is a button click handler
$('#button').click(function () {
// did some stuff
});
})();
</script>
变成
<script type="test/javascript">
$(function() {// this is a button click handler $('#button').click(function() {
// did some stuff }); })(); </script>
故事的重点是始终了解您的环境和用户的需求,即使在评论
这样做:
var wk = 1; //Website Key - Additional Info Here
如果你需要评论这个区块,你可以做
/*
Comments and stuff go here...
var wk = 1; //Website Key - Additional Info Here
*/
避免嵌套块注释。它们在ECMA脚本规范中是被禁止的。如果任何口译员现在允许这样做,他们将来可能不会。
根据第7.4节,
注释可以是单行,也可以是多行。多行注释不能嵌套。
您从不在代码之间放置单行注释。原因是它可读性不够,并且没有在社区中作为最佳实践加以遵循。
使用多行注释标记/*…*/可以很容易地通过注释来收起代码或单行一个//。
PS:对于评论,我建议避免做魔术。我根本不鼓励嵌套评论!为了在Javascript中拥有一致的注释风格,请尝试遵循类似JSDoc的模式。在JSdoc中,在注释一块代码时,您可以执行以下操作:
/***
*
* @param param1
*/
var aFunction = function(param1) {
};
可读,干净,没有魔术。它很棒,因为它还嵌入了某种静态类型检查(我知道JS是动态类型的)。还可以看看这个视频从背后的家伙集成JSDoc到Intellij&Webstorm:Dmitry Jemerov:JavaScript中的静态类型:的内容、方式和原因