javascript - 这个为什么弹出来的是3?

查看:71
本文介绍了javascript - 这个为什么弹出来的是3?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

谁能讲讲这里发生了什么呢?

<html>
<head>
<meta charset="utf-8">
<style>
</style>
<script type="text/javascript">
 window.onload=function(){
  var oBtn1=document.getElementById('btn1');
    for(i=0;i<3;i++){
      oBtn1.onclick=function(){
        alert(i);
      }
    }
 } 
</script>
</head>
<body>
<input id="btn1" type="button" value="开始1">
</body>
</html>

解决方案

去查下作用域的相关知识。
i寻值的时候查的是外部的i。此时循环已经完成,i值为3。

这篇关于javascript - 这个为什么弹出来的是3?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆