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

第二个for运行的结果是什么?为什么?stValue为什么没有用var?可不可以解释下stValue+=i是什么意思

第二个for运行的结果是什么?为什么?stValue为什么没有用var?可不可以解释下stValue+=i是什么意思

sgbb88 2016-06-02 14:11:37
<html><head>    <title>for</title>    <meta http-equiv="content-type" content="text/html ;charset=utf-8"/>    <script type="text/javascript">        function  doFor(){            var stValue="";            for (var i=1;i<=10;i++){                stValue+=i;            }            alert(stValue);            stValue="";            for (var i=10;i>=10;i--){                stValue+=i;            }            alert(stValue);        }</script></head><body onload="doFor()"></body></html>
查看完整描述

3 回答

已采纳
?
一杯2块的奶茶

TA贡献226条经验 获得超75个赞


你这样写第二个for出来,stValue肯定是10,你想让他循环10次,起码改这么写吧

for (var i=10;i>=1;i--){}

你这些都是在一个函数里面执行的,也没返回函数,也就不存在什么作用域的问题了,stValue+=i等价于stValue=stValue+i,他们最大的差别就是复合赋值运算符会自动地将运算结果转型为其左操作数的类型。

查看完整回答
反对 回复 2016-06-02
?
qq_大寒_2

TA贡献173条经验 获得超185个赞

你这是全局变量和局部变量值的比较吧,第二个没有var,全局作用了,

查看完整回答
反对 回复 2016-06-02
?
Caballarii

TA贡献1123条经验 获得超629个赞

第二个没有var是因为同一作用于下只能var一次,stValue+=i的意思是stValue=stValue+i,就是自身的值加上i在赋值给自己

查看完整回答
反对 回复 2016-06-02
  • 3 回答
  • 2 关注
  • 1274 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信