先来个for循环的例子:

 var i=0,j=0;

 for(;i<10,j<6;i++,j++){

   k=i+j; 

 }
console.log(k)

想知道会输出什么,首先得知道完整循环了多少次,想知道完整循环了多少次,就得知道条件的判断,经过我的测试,得到了这么结果:

第一个 ; 和 第二个 ;  之间的代码是条件( for循环里的条件是被 两个分号包围的)这个你知道,如果只有一个条件就以这一个条件为准,如果有多个条件,直接以最后个逗号后面的条件为准,看例子验证

var i=0,j=0;

for(;j<6;i++,j++){

  k=i+j; 

}
console.log(k)

然后两个例子都运行下,得到的结果一样,是不是心里在想,条件里的 i <10 屁用都没有,鬼管你是false还是true,最后的条件才是真正的黑手推动着循环,我还是不信,接着:

 //变量初始值
var i=0,j=0,h=0; for(;i<-1,j<-1,h<6;i++,j++,h++){ k=i+j+h; } console.log(k) /*************************/
//变量初始值
var i=0,j=0,h=0; for(;h<6;i++,j++,h++){ k=i+j+h; }
console.log(k)

果然还是一样,这样就验证了最初说的那句:第一个 ; 和 第二个 ;  之间的代码是条件 这个你知道,如果只有一个条件就以这一个条件为准,如果有多个条件,直接以最后个逗号后面的条件为准

既然知道真正的条件了,就知道真正的完整的循环次数,还是看第一个例子吧:

 var i=0,j=0;

 for(;j<6;i++,j++){
// console.log(i)
// console.log(j)
k=i+j; } console.log(k)

循环完整次数 = 6 - 0 = 6次
循环的首次k值 = 0+0 ; 还剩 5 次都是完整的循环 就有 ++ 的过程 k的值= i + j, i 和 j 在第6次时分别是 5 和 5,第(6-0)+1 = 7次 是循环体的条件里false了,退出循环体,i的值定格在5,j的值也定格在5,那么k的值就定格在5+5 = 10了

javasript-for循环的更多相关文章

  1. 【.net 深呼吸】细说CodeDom(8):分支与循环

    有人会问,为啥 CodeDom 不会生成 switch 语句,为啥没生成 while 语句之类.要注意,CodeDom只关心代码逻辑,而不是语法,语法是给写代码的人用的.如果用.net的“反编译”工具 ...

  2. Recurrent Neural Network系列1--RNN(循环神经网络)概述

    作者:zhbzz2007 出处:http://www.cnblogs.com/zhbzz2007 欢迎转载,也请保留这段声明.谢谢! 本文翻译自 RECURRENT NEURAL NETWORKS T ...

  3. Python学习--04条件控制与循环结构

    Python学习--04条件控制与循环结构 条件控制 在Python程序中,用if语句实现条件控制. 语法格式: if <条件判断1>: <执行1> elif <条件判断 ...

  4. 模仿Linux内核kfifo实现的循环缓存

    想实现个循环缓冲区(Circular Buffer),搜了些资料多数是基于循环队列的实现方式.使用一个变量存放缓冲区中的数据长度或者空出来一个空间来判断缓冲区是否满了.偶然间看到分析Linux内核的循 ...

  5. 如何理解javaSript中函数的参数是按值传递

    本文是我基于红宝书<Javascript高级程序设计>中的第四章,4.1.3传递参数小节P70,进一步理解javaSript中函数的参数,当传递的参数是对象时的传递方式. (结合资料的个人 ...

  6. 【JS基础】循环

    for 循环的语法: for (语句 1; 语句 2; 语句 3) { 被执行的代码块 } 语句 1 在循环(代码块)开始前执行 语句 2 定义运行循环(代码块)的条件 语句 3 在循环(代码块)已被 ...

  7. 【python之路4】循环语句之while

    1.while 循环语句 #!/usr/bin/env python # -*- coding:utf-8 -*- import time bol = True while bol: print '1 ...

  8. To Java程序员:切勿用普通for循环遍历LinkedList

    ArrayList与LinkedList的普通for循环遍历 对于大部分Java程序员朋友们来说,可能平时使用得最多的List就是ArrayList,对于ArrayList的遍历,一般用如下写法: p ...

  9. JavaScript单线程和浏览器事件循环简述

    JavaScript单线程 在上篇博客<Promise的前世今生和妙用技巧>的开篇中,我们曾简述了JavaScript的单线程机制和浏览器的事件模型.应很多网友的回复,在这篇文章中将继续展 ...

  10. .NET基础 一步步 一幕幕[循环、逻辑语句块]

    循环.逻辑语句块   好久不写博客了,断更了好几天了,从上周五到今天,从北京到上海,跨越了1213.0公里,从一个熟悉的城市到陌生的城市,还好本人适应力比较好,还有感谢小伙伴的接风咯,一切都不是事,好 ...

随机推荐

  1. 项目构建之maven篇:5.仓库及nexus创建私服-2

    下载安装 下载地址 改动默认端口: home\conf\nexus.properties # Sonatype Nexus # ============== # This is the most ba ...

  2. DevExpress的DateEdit控件正确显示日期的周名称

    DevExpress 的控件相当好看而且很好用,但 DateEdit 在是显示周名时,只能显示一个“星”字. 以下是解决方法,此解决方法不需修改其源码,所以免去了重新编译的必要,可直接使用其发布的标准 ...

  3. ubuntu 14上安装mysql离线包

    1.下载mysql在linux下离线安装包文件:wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.33-linux-glibc2. ...

  4. 原生js实现的瀑布流布局

    <!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. sql查询:存在A表而不在B表中的数据

    A.B两表,找出ID字段中,存在A表,但是不存在B表的数据. 方法一:使用 not inselect distinct A.ID from A where A.ID not in (select ID ...

  6. jmeter一些插件下载网址

    JSONPathExtractor的插件下载 https://jmeter-plugins.org/wiki/JSONPathExtractor/

  7. 螺旋矩阵 II

    给定一个正整数 n,生成一个包含 1 到 n2 所有元素,且元素按顺时针顺序螺旋排列的正方形矩阵. 示例: 输入: 3 输出: [ [ 1, 2, 3 ], [ 8, 9, 4 ], [ 7, 6, ...

  8. Zookeeper 四字命令 Four Letter Words

    1.zk可以通过它自身提供的简写命令来服务器进行交互 需要使用到nc命令,安装yum install nc echo  [commond] | nc [ip] [port] 2.[stat]  查看z ...

  9. hadoop发行版本之间的区别

    Hadoop是一个能够对大量数据进行分布式处理的软件框架. Hadoop 以一种可靠.高效.可伸缩的方式进行数据处理.Hadoop的发行版除了有Apache hadoop外cloudera,horto ...

  10. 使用PHPMAILER实现PHP发邮件功能

    第一步: 打开网址https://github.com/PHPMailer/PHPMailer/ 下载PHPMailer,PHPMailer 需要 PHP 的 sockets 扩展支持,而登录 QQ ...