JavaScript中while循环的基础使用教程


Posted in Javascript onAugust 11, 2020

前言

在 JavaScript 语言中,当我们使用 while 循环时,只要指定条件为 true,循环就可以一直执行。

并且只要条件一直满足,就可以实现一个无限循环,例如:

while(true){
console.log("1");
}

执行这个循环,就会无止境的输出1。

while 语法及其使用

语法如下所示:

while (condition) {
// 要执行的代码块
}

condition 是循环的条件,只有当循环条件成立时,才会执行花括号 {} 中的代码,如果条件不成立则不会执行代码。

示例:

使用 while 循环输出小于 10 的所有整数:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>JS_侠课岛(9xkd.com)</title>
</head>
<body>
<div>
<p id="while"></p>
</div>
<script>
var number = "";
var i = 0;
while (i < 10) {
number += "<br>第 "+i+" 个数";
i++;
}
document.getElementById("while").innerHTML = number;
</script>
</body> 
</html>

在浏览器中打开:

JavaScript中while循环的基础使用教程

在上述代码中,因为我们目标是输出“小于 10 的所有整数”,所以这其实不包括10 ,而是从 0 - 9 之间的整数。这样的话我们可以声明初始变量 i 为 0 ,表示从 0 开始输出,然后循环条件为 i < 10 ,只要满足这个条件,循环就会一直执行。然后在代码块中加上一句 i++; ,表示每次循环 初始变量值都会加1,一直加到 9 。

do/while 循环的使用

do/while 循环是 while 循环的变体,它与 while 循环的不同在于,在检查条件是否为真之前,该循环将会执行一次代码块,然后只要条件为真,它就将重复该循环。也就是说,不论如何 do/while 循环都会至少执行一次。

语法:

do{
// 要执行的代码块
}while(condition);

示例:

通过 do/while 循环以递减方式,循环输出1-10以内的数字:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>JS_侠课岛(9xkd.com)</title>
</head>
<body>
<div>
<p id="dowhile"></p>
</div>
<script>
var dow = ""
var i = 10;
do {
dow += "<br><br>第 " +i+ " 个数";
i--;
}while (i > 0); 
document.getElementById("dowhile").innerHTML = dow;
</script>
</body> 
</html>

在浏览器中打开:

JavaScript中while循环的基础使用教程

因为我们要实现的是递减输出1-10以内的数字,就是 10、9、8、7、6、5、4、3、2、1 ,那么初始化变量肯定是从10开始,然后循环条件为 i > 0 ,或者 i >= 1 也一样。在代码块中加上 i-- ,每循环一次,初始条件变量将减去一,一直减到大于0为止。

再强调一次, do/while 与 while 循环的不同之处在于:它会先执行一次循环中的语句,然后再判断表达式是否为真,如果为真则继续循环,如果为假则终止循环。所以说不管条件是否为真, do/while 循环至少要执行一次循环语句 。

例如看下面这段代码:

do{
console.log("1");
}while(false);

// 输出:1

尽管我们给 while 后面的循环条件指定为 false , 代码执行结果依然输出了一个1,这表示循环执行了一次。

不同循环的使用情景

  • 当循环次数不限制、不确定时可以使用 while循环。
  • 循环次数有限制、已经确定时可以用 for循环。

动手小练习

定义一个输入框,随机输入一个数,并判断这个数字是否符合条件?
循环弹框输入数据,并在控制台打印,如果输入为 exit,则退出循环。

总结

到此这篇关于JavaScript中while循环的文章就介绍到这了,更多相关JavaScript的while循环内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
Js 刷新框架页的代码
Apr 13 Javascript
JS 事件绑定函数代码
Apr 28 Javascript
基于jquery的$.ajax async使用
Oct 19 Javascript
JS 毫秒转时间示例代码
Sep 22 Javascript
基于JavaScript实现仿京东图片轮播效果
Nov 06 Javascript
javascript事件绑定学习要点
Mar 09 Javascript
全面解析DOM操作和jQuery实现选项移动操作代码分享
Jun 07 Javascript
JavaScript里 ==与===区别详解
Aug 16 Javascript
easyui datebox 时间限制,datebox开始时间限制结束时间,datebox截止日期比起始日期大的实现代码
Jan 12 Javascript
浅谈mint-ui loadmore组件注意的问题
Nov 08 Javascript
json 带斜杠时如何解析的实现
Aug 12 Javascript
vue element-ui table组件动态生成表头和数据并修改单元格格式 父子组件通信
Aug 15 Javascript
vue-cli3 引入 font-awesome的操作
Aug 11 #Javascript
js实现列表按字母排序
Aug 11 #Javascript
Vue使用轮询定时发送请求代码
Aug 10 #Javascript
vue页面引入three.js实现3d动画场景操作
Aug 10 #Javascript
详解vue中v-model和v-bind绑定数据的异同
Aug 10 #Javascript
maptalks+three.js+vue webpack实现二维地图上贴三维模型操作
Aug 10 #Javascript
React实现阿里云OSS上传文件的示例
Aug 10 #Javascript
You might like
PHP has encountered an Access Violation
2007/01/15 PHP
php实现面包屑导航例子分享
2015/12/19 PHP
浅谈php的TS和NTS的区别
2019/03/13 PHP
PHP goto语句用法实例
2019/08/06 PHP
使用PHP+Redis实现延迟任务,实现自动取消订单功能
2019/11/21 PHP
利用javascript解决图片缩放及其优化的代码
2012/05/23 Javascript
javascript中普通函数的使用介绍
2013/12/19 Javascript
JavaScript创建闭包的两种方式的优劣与区别分析
2015/06/22 Javascript
Ionic实现仿通讯录点击滑动及$ionicscrolldelegate使用分析
2016/01/18 Javascript
基于HTML5上使用iScroll实现下拉刷新,上拉加载更多
2016/05/21 Javascript
jQuery的图片轮播插件PgwSlideshow使用详解
2016/08/11 Javascript
使用AngularJS编写多选按钮选中时触发指定方法的指令代码详解
2017/07/24 Javascript
vue引入新版 vue-awesome-swiper插件填坑问题
2018/01/25 Javascript
Vue CLI3基础学习之pages构建多页应用
2019/06/02 Javascript
JS中FileReader类实现文件上传及时预览功能
2020/03/27 Javascript
python使用webbrowser浏览指定url的方法
2015/04/04 Python
Ruby使用eventmachine为HTTP服务器添加文件下载功能
2016/04/20 Python
flask + pymysql操作Mysql数据库的实例
2017/11/13 Python
Python Flask框架扩展操作示例
2019/05/03 Python
python实现的接收邮件功能示例【基于网易POP3服务器】
2019/09/11 Python
在 Python 中接管键盘中断信号的实现方法
2020/02/04 Python
哈工大自然语言处理工具箱之ltp在windows10下的安装使用教程
2020/05/07 Python
Python3实现建造者模式的示例代码
2020/06/28 Python
澳大利亚领先的武术用品和健身器材供应商:SMAI
2019/03/24 全球购物
数控专业推荐信范文
2013/12/02 职场文书
业绩考核岗位职责
2014/02/01 职场文书
安全检查管理制度
2014/02/02 职场文书
少先队学雷锋活动月总结
2014/03/09 职场文书
社区精神文明建设汇报材料
2014/08/17 职场文书
2014年校长工作总结
2014/12/11 职场文书
合同纠纷调解书
2015/05/20 职场文书
电影焦裕禄观后感
2015/06/09 职场文书
业务员管理制度范本
2015/08/06 职场文书
销售口号霸气押韵
2015/12/24 职场文书
Java实现二维数组和稀疏数组之间的转换
2021/06/27 Java/Android
MySQL中的隐藏列的具体查看
2021/09/04 MySQL