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 相关文章推荐
JS宝典学习笔记(下)
Jan 10 Javascript
jquery miniui 教程 表格控件 合并单元格应用
Nov 25 Javascript
jquery实现的V字形显示效果代码
Oct 27 Javascript
JS面向对象(3)之Object类,静态属性,闭包,私有属性, call和apply的使用,继承的三种实现方法
Feb 25 Javascript
JS插件plupload.js实现多图上传并显示进度条
Nov 29 Javascript
vue项目中添加单元测试的方法
Jul 21 Javascript
详解在网页上通过JS实现文本的语音朗读
Mar 28 Javascript
详解Vue路由自动注入实践
Apr 17 Javascript
Vue实现回到顶部和底部动画效果
Jul 31 Javascript
javascript实现点击星星小游戏
Dec 24 Javascript
jQuery class属性操作addClass()与removeClass()、hasClass()、toggleClass()
Mar 31 jQuery
jQuery实现广告显示和隐藏动画
Jul 04 jQuery
详解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 MYSQL 数据备份类
2009/06/19 PHP
基于php iconv函数的使用详解
2013/06/09 PHP
php cookie名使用点号(句号)会被转换
2014/10/23 PHP
php生成毫秒时间戳的实例讲解
2017/09/22 PHP
thinkPHP中钩子的使用方法实例分析
2017/11/16 PHP
PHP进阶学习之依赖注入与Ioc容器详解
2019/06/19 PHP
求解开jscript.encode代码的asp函数
2007/02/28 Javascript
window.open 以post方式传递参数示例代码
2014/02/27 Javascript
extjs每个组件要设置唯一的ID否则会出错
2014/06/15 Javascript
JS中使用sort结合localeCompare实现中文排序实例
2014/07/23 Javascript
使用mini-define实现前端代码的模块化管理
2014/12/25 Javascript
VUE-cli3使用 svg-sprite-loader
2018/10/20 Javascript
详解NodeJS Https HSM双向认证实现
2019/03/12 NodeJs
微信小程序动态设置图片大小的方法
2019/11/21 Javascript
基于JS正则表达式实现模板数据动态渲染(实现思路详解)
2020/03/07 Javascript
深入了解Vue.js 混入(mixins)
2020/07/23 Javascript
JavaScript事件委托实现原理及优点进行
2020/08/29 Javascript
[10:07]2014DOTA2国际邀请赛 实拍选手现场观战DK对阵Titan
2014/07/12 DOTA
使用python 获取进程pid号的方法
2014/03/10 Python
Python列表计数及插入实例
2014/12/17 Python
简单了解python模块概念
2018/01/11 Python
python使用tornado实现登录和登出
2018/07/28 Python
使用python写的opencv实时监测和解析二维码和条形码
2019/08/14 Python
Django框架模板用法入门教程
2019/11/04 Python
Python3运算符常见用法分析
2020/02/14 Python
解决pycharm debug时界面下方不出现step等按钮及变量值的问题
2020/06/09 Python
css3动画效果小结(推荐)
2016/07/25 HTML / CSS
美国环保妈妈、儿童和婴儿用品购物网站:The Tot
2019/11/24 全球购物
如何撰写一封出色的求职信
2014/04/27 职场文书
目标责任书格式
2014/07/28 职场文书
工作证明范本(2篇)
2014/09/14 职场文书
初中学习计划书范文
2014/09/15 职场文书
党员对照检查材料思想汇报(党的群众路线)
2014/09/24 职场文书
vue首次渲染全过程
2021/04/21 Vue.js
浏览器常用基本操作之python3+selenium4自动化测试(基础篇3)
2021/05/21 Python
实现GO语言对数组切片去重
2022/04/20 Golang