今天写了一个javascript的for循环,for循环外面依然能够引用到i变量的值,百思不得其解。
经过百度得知原因如下:
Javascript的变量的作用域(scope)是根据方法块来划分的(function的{ }来划分)!切记,是function块,而for、while、if块并不是作用域的划分标准!
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
<script type="text/javascript">
function test1() {
for (var i = 0; i < 3; i++) {
}
alert(i);
}
</script>
</head>
<body>
<input type="button" value="click1" onclick="test1()"/>
</body>
</html><span style="color:#ff0000;">
</span>结果如下:
本文详细解析了JavaScript中变量作用域的概念,特别关注了for循环外部如何引用循环变量i,通过一个具体的例子展示了作用域划分的重要性,并提供了实际的代码示例以帮助理解。
404

被折叠的 条评论
为什么被折叠?



