老师问一个js的执行顺序问题

老师问一个js的执行顺序问题

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>Document</title>

</head>

<body>

    <button>dianjiwo</button>

    <script>

        var btn=document.querySelector('button');

        var num=0;

        btn.onclick=function(){

            if(num>3){

                alert(3)

            }else{

                num++;

            }

        }

    </script>

</body>

</html>

为什么我点击按钮次数为第四次时,不弹出alert(3),而我修改条件num>=3时,第四次就弹出了,我很困惑

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

2回答
好帮手慕慕子 2020-04-16 18:13:46

同学你好,因为代码执行顺序是从上到下的,点击按钮时, 先进行if判断(此时的num还没执行++呢) , 不符合条件后,再执行的num++。

可以在结合老师上次回答的截图注释理解下,祝学习愉快~

好帮手慕慕子 2020-04-16 10:42:16

同学你好,可以结合下图注释理解

http://img1.sycdn.imooc.com//climg/5e97c5fb09db2d0f19180796.jpg

如果我的回答帮助到了你,欢迎采纳,祝学习愉快~

  • 提问者 Yuuuuuuuuu #1
    老师 我还是不太懂 num的值为什么不是执行num++的值 不是点击按钮一次就执行一次吗
    2020-04-16 15:11:23
  • 提问者 Yuuuuuuuuu #2
    老师您讲的我大概懂了 但是我有一点不明白就是 因为 我点击按钮的时候 num++了 可是为什么是0呢 难道num++不是给num自增1吗 你说第一次点击Num=0 然后num++ num的值为1 这个顺序我还是不太明白 老师可不可以讲一下
    2020-04-17 09:13:08
  • 好帮手慕慕子 回复 提问者 Yuuuuuuuuu #3
    同学你好, 代码是从上到下执行的,第一次点击时,num的值为0, 不符合num>3的条件,然后执行num++ ,第二次点击的时候,才是使用上次点击计算后num++值,也就是1, 不符合num>3的条件,执行num++, 第三次点击的时候,使用的是第二次点击计算后的num++值也就是2,依次类推,同学可以试着理解下,祝学习愉快~
    2020-04-17 09:34:03
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师