哪条线需要Dean Edwards Javascript打包机的分号?

时间:2012-02-10 04:05:16

标签: javascript packer

所以他的help site声明“所有语句,包括函数声明,必须用分号正确终止。”

但是在这个sample code中,他特意说 not 以分号结束if语句。

那么有一个完整的列表应该用分号结束吗?我正在查看我的Javscript代码,在某些情况下,我不确定封装器的正确格式:

1)

for( i in cities ) {
    alert( i );
};

2)

var map = {
    city : 'atlanta',
    year : 1987
};

3)

var info_window = new google.maps.InfoWindow( {
    content : content_div,
    zIndex  : INFO_WINDOW_Z
}; );

4)

var options = {
    business : business,
    columns  : [ 'url', 'image_url', 'expiration', 'percent_discount', 'claimed', 'fine_print' ];
};

5)

$( warp_content ).hover( function() {
    $( deal_description ).fadeIn( 'fast' );
};, function() {
    $( deal_description ).fadeOut( 'fast' );
}; );

1 个答案:

答案 0 :(得分:2)

有规则,但有时它们可​​能并不明显。基本上,以下语句 not 需要终止分号:

  • if (...) { }
  • for (...) { }
  • while (...) { }do { } while (...);除外)
  • function (...) { }(除了var f = function() { };之外的例子,其中匿名函数是更大声明的一部分)
  • try { } catch (...) { }
  • with (...) { }

基本上,只有{ }围绕一组语句,即,并且不需要终止分号。