JavaScriptでコメントアウトをネストのサンプル

ifの条件部分が1の場合

ブラウザでJavaScriptを無効にしていないなら、上に「ここは有効。」が2つ出力されています。以下、そのコードです。


<script type="text/javascript">
if(1){
document.write ("<p>ここは有効。</p>");
//document.write ("<p>ここは無効。</p>");
document.write ("<p>ここは有効。</p>");
/*
document.write ("<p>ここは無効。</p>");
document.write ("<p>ここは無効。</p>");
*/
}
</script>

ifの条件部分が0の場合

この文章の上に「ifの条件部分が0の場合」という文章があるように見えますが、ソースコードを確認すると、間にJavaScriptが記述されているのを確認できます。以下、そのコードです。


<script type="text/javascript">
if(0){
document.write ("<p>ここは無効。ifで無効になっているので。</p>");
//document.write ("<p>ここも無効。</p>");
document.write ("<p>ここも無効。ifで無効になっているので。</p>");
/*
document.write ("<p>ここも無効。</p>");
document.write ("<p>ここも無効。</p>");
*/
}
</script>

ifが3階層で入れ子の場合

上の文章のコードは次のとおりです。


<script type="text/javascript">
if(1){
document.write ("<p>親階層は有効。</p>");
    if(1){
    document.write ("<p> 子階層1も有効。</p>");
        if(0){
        document.write ("<p>  孫階層1-1は無効。</p>");
        }
    }
    if(1){
    document.write ("<p> 子階層2は有効。</p>");
        if(0){
        document.write ("<p>  孫階層2-1は無効。</p>");
        }
        if(1){
        document.write ("<p>  孫階層2-2は有効。</p>");
        }
    }
    if(0){
    document.write ("<p> 子階層3は無効。</p>");
    }
    if(0){
    document.write ("<p> 子階層4は無効。</p>");
        if(1){
        document.write ("<p>  孫階層4-1も無効。親である「子階層4」が無効なので。</p>");
        }
    }
    if(1){
    document.write ("<p> 子階層5は有効。</p>");
        if(1){
        document.write ("<p>  孫階層5-1も有効。</p>");
        }
    }
}
</script>