今天在给一个学妹调她的代码BUG时,她的问题就是在一个for循环里不清楚流程的具体流向,所以导致了页面怎么调都是有问题,嗯确实你如果不清楚语句流向很轻易就会出问题,所以说for循环不会用或者说用的不恰当还是很可怕的。我也借此机会顺带复习了一下javascript里的for()循环。翻出了自己以前关于for循环的一些笔记,有些内容跃然浮于脑海中,以下大部分来自很久之前的笔记,可能会有一部分来自于网上其他优秀博客的内容。

for循环里共有三个流程语句,这三个部分之间用";"分开。第一个是一个赋值语句, 它用来给循环控制变量赋初值。第二个,条件表达式是一个关系表达式, 它决定什么时候退出循环。第三个,增量定义循环控制变量每循环一次后,按什么方式变化。

再下来就是一个结构体{},包含着你想用来执行的代码。。大概就是这个样子:for(赋初值语句;循环条件;递增值){语句;}

然后for循环的执行顺序呢如下。

1.赋值语句:只执行一次, 执行完后进到下一步
2.循环条件:用来判断条件是否成立, 如果成立则进行下一步, 不成立则退出整个循环
3.循环体里的内容:如果有break则不执行下面代码, 直接跳出循环。 如果有continue则跳过continue之后的代码, 进行下一步。
4.递增值:用来计算变量。

如果for循环里没有break或者continue语句,则一般结束循环都是在判断完关系表达式后如果不满足条件之后退出循环。

理论上来说,只要外部条件足够,for循环里的三个流程语句都是可以省略掉的。是不是有点害怕~~

1.当在外部有定义循环内所用到的变量时,省略for循环里的定义,则直接用外部全局变量来充当此for循环内的变量。所以经常会看到会有for循环先定义一个全局变量。。

2.当for循环内部语句有包含满足什么情况break后,理论上来说可以省略循环条件。

3.递增值,也可以在for循环结构体内部定义。

所以当有一天你看到了类似这种结构的for循环,请答应我不要吃惊

嗯,貌似没什么说的了。那就先这样。

对了,终于我学会了使用上面那些加花里胡哨的东西,以后博客内容会越来越精彩哦,想想都有点小激动呢。

javascript里for循环的一些事情的更多相关文章

  1. javascript里的循环语句

    前序:我一直对于for跟for..in存在一种误解,我觉得for都能把事情都做了,为啥还要for...in...这玩意了,有啥用,所以今天就说说JavaScript里的循环语句. 循环 要计算1+2+ ...

  2. JavaScript里的循环方法总结

    JavaScript诞生已经有20多年了,我们一直使用的用来循环一个数组的方法是这样的: for (var index = 0; index < myArray.length; index++) ...

  3. JavaScript里的循环方法之forEach,for-in,for-of

    JavaScript一种直译式脚本语言,是一种动态类型.弱类型.基于原型的语言,内置支持类型.它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标 ...

  4. JavaScript里的循环方法:forEach,for-in,for-of

    JavaScript诞生已经有20多年了,我们一直使用的用来循环一个数组的方法是这样的: for (var index = 0; index < myArray.length; index++) ...

  5. [译] JavaScript 的事件循环

    译者注 本译文基本是按原文的意思来翻译,但对于 JavaScript 的事件循环,个人感觉还是 Philip Roberts 的视频讲解更形象些,思路和本文大致相同,不过他把事件表理解为 Web AP ...

  6. JavaScript里的依赖注入

    JavaScript里的依赖注入 我喜欢引用这句话,“程序是对复杂性的管理”.计算机世界是一个巨大的抽象建筑群.我们简单的包装一些东西然后发布新工具,周而复始.现在思考下,你所使用的语言包括的一些内建 ...

  7. JavaScript 里,$ 代表什么?/JQuery是什么语言?/html中用link标签引入css时的中 rel="stylesheet"属性?/EL表达式是什么?

    JavaScript 里,$ 代表什么? 比如说我写一个mouseover事件: $(document).ready(function(){ $("p").mouseover(fu ...

  8. javascript里的sleep()方法

    很多编程语言里都有sleep(),delay()等方法,它能让我们的程序不那么着急的去执行下一步操作,而是延迟.等待一段时间.软件开发中经常会遇到需要这样的函数,比如等待几分钟去检查某一事件是否发生. ...

  9. javascript递归、循环、迭代、遍历和枚举概念

    javascript递归.循环.迭代.遍历和枚举概念 〓递归(recursion)在数学与计算机科学中,是指在函数的定义中使用函数自身的方法.递归一词还较常用于描述以自相似方法重复事物的过程.例如,当 ...

随机推荐

  1. c#基础知识-2

    1.在控制台接受数据时可以这样输入: using System; using System.Collections.Generic; using System.Linq; using System.T ...

  2. JavaScript基础--事件驱动和访问CSS技术(十)

    1.原理: 2.快速入门案例 js中的事件主要分为4种: 案例:监听鼠标点击事件,并能够显示鼠标点击的位置x,y <script language="javascript" ...

  3. 嵌入式linux应用开发完全手册学习笔记一

    2015.3.25星期三 晴 有两个星期没写学习日记了,找个时间把这段时间做的电子词典和ARM小项目总结一下. 下面的知识点总结,U-BOOT:参考PDF文档:嵌入式linux应用开发完全手册 当虚拟 ...

  4. Multiply game_线段树

    Problem Description Tired of playing computer games, alpc23 is planning to play a game on numbers. B ...

  5. html5有哪些新特性、移除了那些元素?如何处理HTML5新标签的浏览器兼容问题?如何区分 HTML 和 HTML5?

    * HTML5 现在已经不是 SGML(标准通用标记语言,是一种定义电子文档结构和描述其内容的国际标准语言) 的子集,主要是关于图像,位置,存储,多任务等功能的增加.   * 拖拽释放(Drag an ...

  6. 观看github前100开源项目的读后感

    文章来自:http://www.oschina.net/news/61416/github-top-100-objective-c-projects?from=20150412 ReactiveCoc ...

  7. Java问题总结

    1.如何查看使用java的版本 cmd-->java -version 2.如何下载jdk,sdk Java.JDK(工具包)的安装_百度经验http://jingyan.baidu.com/a ...

  8. ups机制下停电提前关闭oracle数据库

    思路:在一个受ups保护的机器A1上写脚本,几分钟(如半分钟)ping不在ups保护的机器B,如果几次(如5次)ping不同,这时我们认为将要停电,此时脚本执行正常关闭受ups保护的机器上数据库的命令 ...

  9. 论文笔记之:Hybrid computing using a neural network with dynamic external memory

    Hybrid computing using a neural network with dynamic external memory Nature  2016 原文链接:http://www.na ...

  10. mac 下更新 .bash_profile 文件

    1.打开terminal(终端) 2.cd ~ ( 进入当前用户的home目录) 3.open .bash_profile (打开.bash_profile文件,如果文件不存在就  创建文件:touc ...