JS中的三个循环小结


Posted in Javascript onJune 20, 2017

一、for循环

四部曲:

1、设置初始值 var i = 0

2、设置循环执行条件 i < 5

3、执行循环体中的内容{ [循环体] } 包起来的部分

4、每一轮循环完成后都执行我们的i++累加操作

for(var i = 0;i<5;i++){
 console.log(i)
}

break/continue:在循环体中遇到这两个关键字,循环体中的后面的代码就不在执行了

break:在循环体中,出现break,整个循环就直接的结束了,i++最后的这个累加的操作也不执行了

continue:在循环体中,出现continue,当前这一轮的循环就结束了,继续下一轮的循环,i++继续执行 

for(var i = 0;i<10;i++){
 if(i<=5){
  i+=2;
  continue;
 }
 i+=3;
 break;
 console.log(i)//不执行
}
console.log(i)//9

 二、for in 循环

用来循环一个对象中的属性名和属性值的 

var object = {
 name:'小李',
 age:18,
 height:'170cm',
 hobby:'敲代码'
}
//对象中有多少组键值对,就循环几次
//顺序问题:首先循环数字的属性名(按照从小到大),再把剩下的属性名按照我们写得顺序循环
for(var key in object){
console.log(key);//每一次循环获取的属性名

console.log(object[key])// 获取属性值 在for in 中只能通过对象名[key]来获取 不能写obj.key
}

 

案例:表格隔行换色 (三元运算符满足条件如果有多个执行,可以加上括号,然后使用逗号分隔)

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>Document</title>
 <style>
  body,div,ul,li{
   margin:0;
   padding: 0;
   font-family: Arial;
   font-size:12px;
  }
  ul li{
   list-style:none;
  }
  #list{
   margin:10px auto 0;
   padding:10px;
   width:500px;
   border:1px solid #ddd;
   border-radius:10px;
   /*background: -webkit-linear-gradient(top left,#31b0d5,#67b168,#ac2925)*/
  }
  #list li{
   height:30px;
   line-height: 30px;
   cursor:pointer; 
  }
  .c1{
   background:#ddd;
  }
  .c2{
   background: #a6e1ec;
  }
  .c3{
   background: #67b168;
  }
 </style>
</head>
<body>
 <div id='list'>
  <ul>
   <li>11111111111111111111111111</li>
   <li>22222222222222222222222222</li>
   <li>33333333333333333333333333</li>
   <li>44444444444444444444444444</li>
   <li>55555555555555555555555555</li>
   <li>66666666666666666666666666</li>
   <li>11111111111111111111111111</li>
   <li>22222222222222222222222222</li>
   <li>33333333333333333333333333</li>
   <li>44444444444444444444444444</li>
   <li>55555555555555555555555555</li>
   <li>66666666666666666666666666</li>
  </ul>
 </div>
 <script type='text/javascript'>
  //原理:操作所有的li,让按照奇偶行的规律,改变他的class样式的属性值,奇数行是c1,偶数行是c2
  //通过元素的标签名获取一组元素
  // document.getElementsByTagName('元素的标签名字')
  //在整个文档中(获取的范围,上下文),我们通过元素的标签名来获取一组元素
  //获取整个文档的所有的li,他是一个集合,我们把这个集合叫做类数组(类似于数组)
  //并且类数组是对象数据类型的
  // var oLis = document.getElementsByTagName('li');
  //索引:就是代表当前是第几个元素的位置下标,索引是从0开始的
  //length:代表获取的集合的长度,或者是当前获取了多少li
  //通过dom方法获取到的类数组可以通过用.item(索引)来获取某一个
  var oList = document.getElementById('list');
  var oLis = oList.getElementsByTagName('li');
  for(var i = 0;i<oLis.length;i++){
   var oLi = oLis[i];
   i%2===0?oLi.className = 'c1':oLi.className='c2'
  }
 </script>
</body>
</html>

以上所述是小编给大家介绍的JS中的三个循环小结,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
jQuery弹出层插件简化版代码下载
Oct 16 Javascript
EXT窗口Window及对话框MessageBox
Jan 27 Javascript
js写一个字符串转成驼峰的实例
Jun 21 Javascript
JQuery+DIV自定义滚动条样式的具体实现
Jun 25 Javascript
jQuery前端框架easyui使用Dialog时bug处理
Dec 05 Javascript
javascript实现简单查找与替换的方法
Jul 22 Javascript
jQuery使用$.ajax提交表单完整实例
Dec 11 Javascript
JS、jQuery中select的用法详解
Apr 21 Javascript
web前端vue之CSS过渡效果示例
Jan 10 Javascript
select标签设置默认选中的选项方法
Mar 02 Javascript
Element-ui中元素滚动时el-option超出元素区域的问题
May 30 Javascript
Node.js Domain 模块实例详解
Mar 18 Javascript
详解Vue 方法与事件处理器
Jun 20 #Javascript
Vue Ajax跨域请求实例详解
Jun 20 #Javascript
详解webpack 入门总结和实践(按需异步加载,css单独打包,生成多个入口文件)
Jun 20 #Javascript
详解Angular的8个主要构造块
Jun 20 #Javascript
vue之数据交互实例代码
Jun 20 #Javascript
jquery加载单文件vue组件的方法
Jun 20 #jQuery
Angular.JS中select下拉框设置value的方法
Jun 20 #Javascript
You might like
PHP二维数组的去重问题解析
2011/07/17 PHP
PHP中使用数组实现堆栈数据结构的代码
2012/02/05 PHP
在Nginx上部署ThinkPHP项目教程
2015/02/02 PHP
Opcache导致php-fpm崩溃nginx返回502
2015/03/02 PHP
php实现以只读方式打开文件的方法
2015/03/16 PHP
PHP正则表达式入门教程(推荐)
2016/05/18 PHP
详解php几行代码实现CSV格式文件输出
2017/07/01 PHP
Laravel框架实现的记录SQL日志功能示例
2018/06/19 PHP
基于jquery实现的上传图片及图片大小验证、图片预览效果代码
2011/04/12 Javascript
Jquery实现简单的动画效果代码
2012/03/18 Javascript
鼠标放在图片上显示大图的JS代码
2013/03/26 Javascript
js购物车实现思路及代码(个人感觉不错)
2013/12/23 Javascript
使用纯javascript实现放大镜效果
2015/03/18 Javascript
jQuery下拉美化搜索表单效果代码分享
2015/08/25 Javascript
JS实现标签滚动切换效果
2017/12/25 Javascript
AngularJS实现的生成随机数与猜数字大小功能示例
2017/12/25 Javascript
点击按钮弹出模态框的一系列操作代码实例
2019/03/29 Javascript
深入理解 ES6中的 Reflect用法
2020/07/18 Javascript
Vue自动构建发布脚本的方法示例
2020/07/24 Javascript
微信小程序canvas实现签名功能
2021/01/19 Javascript
[02:30]DOTA2放量测试专访海涛:呼吁保护新手玩家
2013/08/26 DOTA
python基于urllib实现按照百度音乐分类下载mp3的方法
2015/05/25 Python
python实现随机森林random forest的原理及方法
2017/12/21 Python
浅述python中深浅拷贝原理
2018/09/18 Python
Django实现将一个字典传到前端显示出来
2020/04/03 Python
Python之Matplotlib文字与注释的使用方法
2020/06/18 Python
Django数据模型中on_delete使用详解
2020/11/30 Python
python+selenium+chrome实现淘宝购物车秒杀自动结算
2021/01/07 Python
从一次项目重构说起CSS3自定义变量在项目的使用方法
2021/03/01 HTML / CSS
美国高端婴童品牌:Hanna Andersson
2016/10/30 全球购物
医学生自我评价
2014/01/27 职场文书
关于幸福的感言
2015/08/03 职场文书
商业计划书格式、范文
2019/03/21 职场文书
Nginx配置并兼容HTTP实现代码解析
2021/03/31 Servers
Dubbo+zookeeper搭配分布式服务的过程详解
2022/04/03 Java/Android
Tomcat执行startup.bat出现闪退的原因及解决办法
2022/04/20 Servers