开发者社区> 问答> 正文

JS里一个函数内可以有几个if语句?

这么写是没错的,

  <script type="text/javascript">
        function show(a){
            if(document.getElementById('A'+a).style.display=='none'||document.getElementById('pic'+a).src=='bottom.png'){
                document.getElementById('A'+a).style.display='block';
                document.getElementById('pic'+a).src='top.png';
            }else{
                document.getElementById('A'+a).style.display='none';
                document.getElementById('pic'+a).src='bottom.png';
            }
        }
    </script>

那为什么这么写就只有上面那个if语句有效果,下面的没有效果?

    <script type="text/javascript">
        function show(a){
            if(document.getElementById('A'+a).style.display=='none'){
                document.getElementById('A'+a).style.display='block';
            }else{
                document.getElementById('A'+a).style.display='none';
            }
            if(document.getElementById('pic'+a).src=='bottom.png'){
                document.getElementById('pic'+a).src='top.png';
            }else{
                document.getElementById('pic'+a).src='bottom.png';
            }
        }
    </script>

一个函数内只能写一个if语句吗?
贴出下面body里面的代码

 <div class="A">
    <img src="bottom.png" id="pic1" onclick="show(1)"/>
    我的文档
</div>
<div class="nav">
    <ul id="A1" style="display:none;">
        <li>Adobe</li>
        <li>Adobe Scripts</li>
        <li>Downloads</li>
        <li>多益网络</li>
    </ul>
</div>

展开
收起
小旋风柴进 2016-03-18 10:42:12 2721 0
1 条回答
写回答
取消 提交回答
  • if语句个数没有限制,这两个区别在于,如果初始值是下面这样

    document.getElementById('A'+a).style.display='block'
    document.getElementById('pic'+a).src='bottom.png'
    那么这两个if的效果不一样。第一个里面的if判断是只要有一个符合条件,if判断结果是true,就都改变。
    而第二个函数中的if是分开的,如果按照上面的值,第一个if判断是false,第二个是true.

    2019-07-17 19:06:07
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
JavaScript面向对象的程序设计 立即下载
Delivering Javascript to World 立即下载
编程语言如何演化-以JS的private为例 立即下载