while循环

while 语句与 if 语句相似,都有条件来控制语句(或语句块)的执行,其语言结构基本相同:
while(conditions){
    statements;
}

while 语句与 if 语句的不同之处在于:在if条件假设语句中,若逻辑条件表达式为真,则运行statements语句(或语句块),且仅运行一次;while 循环语句则是在逻辑条件表达式为真的情况下,反复执行循环体内包含的语句(或语句块)。

注意:while语句的循环变量的赋值语句在循环体前,循环变量更新则放在循环体内;for循环语句的循环变量赋值和更新语句都在for后面的小括号中,在编程中应注意二者的区别。

【例3-5】用while()循环来计算1+2+3 ... +98+99+100的值:

代码如下 复制代码
<html>
<head>
<title>计算1+2+3 ... +98+99+100的值</title>
</head>
<body>
<script language="JavaScript" type="text/javascript">
var total=0;
var i=1;
while(i<=100){
    total+=i;
    i++;
}
alert(total);
</script>
</body>
</html>

在某些情况下,while循环大括号内的statements语句(或语句块)可能一次也不被执行,因为对逻辑条件表达式的运算在执行statements语句(或语句块)之前。若逻辑条件表达式运算结果为假,则程序直接跳过循环而一次也不执行statements语句(或语句块)。

do...while循环

若希望至少执行一次statements语句(或语句块),可改用do…while语句,其基本语法结构如下:

do { www.111cn.net
     statements;
}while(condition);

【例3-6】用do-while()循环来计算1+2+3 ... +98+99+100的值:

代码如下 复制代码

<html>
<head>
<title>计算1+2+3 ... +98+99+100的值</title>
</head>
<body>
<script language="JavaScript" type="text/javascript">
var total=0;
var i=1;
do{
    total+=i;
    i++;
}while(i<=100);
alert(total);
</script>
</body>

</html>

for、while、do…while三种循环语句具有基本相同的功能,在实际编程过程中,应根据实际需要和本着简单易懂的原则来选择循环语句。

do while实例

代码如下 复制代码
<html>
<head>
<title> www.111cn.net 一个使用到do...while循环的Javascript示例</title>
</head>
<body>
<p>
<script type="text/javascript">
i = 0
do
{
document.write( i + "<br>")
i++
}
while (i <= 5)
</script>

数字是 0
数字是 1
数字是 2
数字是 3
数字是 4
数字是 5
解释:
i 等于 0。
循环首先会运行。
每循环一次,i 就会累加 1。
当 i 小于或等于 5 时,循环会继续运行。
javascrpt while

代码如下 复制代码
 
<script type="text/javascript">
i = 0
while (i <= 5)
{
document.write("数字是 " + i)
document.write("<br>")
i++
}
</script>

数字是 0
数字是 1
数字是 2
数字是 3
数字是 4
数字是 5
解释:
i 等于 0。

当 i 小于或等于 5 时,循环将继续运行。
循环每运行一次,i 会累加 1。
Javascript示例代码解释:这个Javascript示例用到了do...while循环语句。
循环语句允许重复执行一行或数行代码,do后面跟的是重复执行的代码,while后面跟的是终止循环的条件。这个Javascript示例中,设一个变量为i,i初始值为0,i++表示每次重复执行后i的值就加1,终止循环条件为while (i <= 5),也就是说,一旦i的值大于5,就终止循环。该示例中,重复循环的语句是while循环里面的document.write语句。

从上面的实例我们可以看出来关于js while ,do while 它们之间的区别。

更多详细内容请查看:http://www.111cn.net/wy/js-ajax/54892.htm

Javascript中while和do-while循环用法详解的更多相关文章

  1. CSS中伪类及伪元素用法详解

    CSS中伪类及伪元素用法详解   伪类的分类及作用: 注:该表引自W3School教程 伪元素的分类及作用: 接下来让博主通过一些生动的实例(之前的作业或小作品)来说明几种常用伪类的用法和效果,其他的 ...

  2. Python中生成器和yield语句的用法详解

    Python中生成器和yield语句的用法详解 在开始课程之前,我要求学生们填写一份调查表,这个调查表反映了它们对Python中一些概念的理解情况.一些话题("if/else控制流" ...

  3. SVN组成中trunk,branches and tags功能用法详解

    SVN组成中trunk,branches and tags功能用法详解  我相信初学开发在SVN作为版本管理时,都估计没可能考虑到如何灵活的运用SVN来管理开发代码的版本,下面我就摘录一篇文章来简单说 ...

  4. javascript中的Base64.UTF8编码与解码详解

    javascript中的Base64.UTF8编码与解码详解 本文给大家介绍的是javascript中的Base64.UTF8编码与解码的函数源码分享以及使用范例,十分实用,推荐给小伙伴们,希望大家能 ...

  5. javascript中的字符串编码、字符串方法详解

    js中的字符串是一种类数组,采用UTF-16编码的Unicode字符集,意味字符串的每个字符可用下标方式获取,而每个字符串在内存中都是一个16位值组成的序列.js对字符串的各项操作均是在对16位值进行 ...

  6. javascript中的apply,call,bind详解

    apply.call 在 javascript 中,call 和 apply 都是为了改变某个函数运行时的上下文(context)而存在的,换句话说,就是为了改变函数体内部 this 的指向. Jav ...

  7. JavaScript中的Function(函数)对象详解

    JavaScript中的Function对象是函数,函数的用途分为3类: 作为普通逻辑代码容器: 作为对象方法: 作为构造函数. 1.作为普通逻辑代码容器 function multiply(x, y ...

  8. Javascript中Function,Object,Prototypes,__proto__等概念详解

    http://anykoro.sinaapp.com/2012/01/31/javascript%E4%B8%ADfunctionobjectprototypes__proto__%E7%AD%89% ...

  9. GOF提出的23种设计模式是哪些 设计模式有创建形、行为形、结构形三种类别 常用的Javascript中常用设计模式的其中17种 详解设计模式六大原则

    20151218mark 延伸扩展: -设计模式在很多语言PHP.JAVA.C#.C++.JS等都有各自的使用,但原理是相同的,比如JS常用的Javascript设计模式 -详解设计模式六大原则 设计 ...

随机推荐

  1. PostgreSQL的 initdb 源代码分析之九

    继续:下面的是定义信号处理函数. /* * now we are starting to do real work, trap signals so we can clean up */ /* som ...

  2. Codeforces Round #327 (Div. 2) D. Chip 'n Dale Rescue Rangers 二分 物理

    D. Chip 'n Dale Rescue Rangers Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/co ...

  3. STL中heap算法(堆算法)

     ①push_heap算法 以下是push_heap算法的实现细节.该函数接收两个迭代器,用来表现一个heap底部容器(vector)的头尾,而且新元素已经插入究竟部的最尾端. template ...

  4. ios开发——实用技术篇Swift篇&地址薄、短信、邮件

    //返回按钮事件 @IBAction func backButtonClick() { self.navigationController?.popViewControllerAnimated(tru ...

  5. ActionScript 3 中的强制类型转换

    以前AS中是这样进行强制类型转换的:假设有一个类叫做Class1,我们声明了一个它的对象 c1,如果想要将它转换成Class2类型,只要这样写: Class2(c1); 在AS3中你依然可以这样写,但 ...

  6. java后端模拟表单提交

    代码可实现文本域及非文本域的处理 请求代码: /** * 上传 * * @param urlStr * @param textMap * @param fileMap * @return */ pub ...

  7. C++赋值运算符函数

    为类添加赋值运算符函数: 类型定义 class CMyString { public: CMyString(char *pData = NULL); CMyString(const CMyString ...

  8. 使用phpExcel向mysql数据库导入excel

    使用phpExcel向mysql数据库导入excel from:http://blog.163.com/dustye_l/blog/static/172439513201242491016834/ 使 ...

  9. cocos2d-x 3.0 alpha1 生成Qt qch帮助文档

    Qt的助手挺好用的. 比chm好多了 cocos2d-x使用doxygen生成文档. 默认生成的是html形式, 需要打开浏览器, 这个是比较耗资源吧 可以修改配置, 让doxygen同时输出qch形 ...

  10. 小白日记22:kali渗透测试之提权(二)--抓包嗅探

    抓包嗅探 通过抓包嗅探目标机器的流量,发现账号密码. Windows系统 1.Wirehshark 2.Omnipeek 3.commview 4.Sniffpass 只会抓取识别传输密码的明文协议, ...