为了账号安全,请及时绑定邮箱和手机立即绑定

for循环执行顺序

for(var i=0;i<oLis.length;i++){
            oLis[i].index=i;
            oLis[i].onclick=function(){
                alert(i);
                for(var j=0;j<oLis.length;j++){
                    oLis[j].className="";
                    oDivs[j].className="hide";
                }
                this.className="on";
                oDivs[this.index].className="";
            }     
}

这部分不明白,for循环是跳过oLis[i].onclick=function()执行完了么,为什么第四行alert(i)弹出是3,i的最大值应该是2啊,如果for循环是执行完了,之后点击选项卡是怎么进入到for循环的onclick事件的?

正在回答

5 回答

onclick 是一个事件

而事件是需要出发条件的,当你点击的时候,就触发啦


至于为什么弹出的都是3 

按理来说应该是2,那就要降到for的执行顺序

for( ①; ②; ③  ){

    ④

}

so,来模拟运行下: ①,②,④,③ ,②,④,③ .....

故,①只会执行一次,②④会执行 n 次, ③会执行 n+1 次

0 回复 有任何疑惑可以回复我~
#1

爱丽丝走丢了 提问者

恩 明白了 thanks~
2015-08-26 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

for循环执行顺序

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信