js中的for循环和i++

                            for(exp1;exp2;exp3){
			     循环体(被执行的代码块);
			 }
			 exp1:在循环(代码块)开始前执行;
			 exp2:是判断是否能执行循环体的条件;
                         exp3;在循环(代码块)已被执行之后执行,进行增量操作(例如加减法等);

                            for (var i = 1; i <= 10; ++i) {
                                document.write(i+"<br />");            
                            }
                            alert(i);
            //首先给变量i赋初始值1,然后判断 1<10,接着执行循环体 document.write(i+"<br />"),然后进行第一次增量操作:i+1,然后进入下一次循环

        在这个for循环中,i++和++i的作用并无区别,因为它们是独立语句,没有涉及到i值的引用(例如赋值或者比较),独立使用的时候没有先赋值后自加或者先自加后赋值中的"赋值"操作,所以也就不存在操作先后的关系即最后效果都是一样的只有自加。例如没有直接将 i值赋给其他变量或者将i++或者++i与其他值直接进行比较,只是一个关于变量i的简单叠加然后进行判断的过程(虽然在for循环中涉及到了i值的比较,但是不是直接的比较,没有直接用i++或者是++i与10进行比较而是将增量之后的结果与10进行比较)

如果是这样进行直接比较那i++和++i就有一定的区别:

                        var i = 0;
			if (0 < i++ ) {
			    document.write("yes");
			}else{
				document.write("no");
			}//返回值为no 先将i=0与0进行比较然后再加1
			alert(i);//1
			
			document.write("<br />");
			
			var i = 0;
			if (0 < ++i) {
				document.write("yes");
			} else{
				document.write("no");
			}//返回值为yes 先i+1然后在于0进行比较			
			alert(i);//

阅读更多
文章标签: for循环 2018.04.17
个人分类: js
上一篇js流程控制-For循环
下一篇switch语句中的default与break
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭