for循环

  1、for有三个表达式:①声明循环变量;②判断循环条件;③更新循环变量;三个表达式之间,用;分割,

for循环三个表达式都可以省略,但是两个“;”缺一 不可。

2、for循环的执行特点:先判断再执行,与while相同  

3、for循环三个表达式都可以有多部分组成,第二部分多个判断条件用&& ||连接,第一三部分用逗号分割;

for(var num = 1;num<10;num++){
console.log(num);//1,2,3,4,5,6,7,8,9
}

while循环

while循环()中的表达式,运算结果可以是各种类型,但是最终都会转为真假,转换规则如下。

  ①Boolean:true为真,false为假;
  ②String:空字符串为假,所有非空字符串为真;
  ③Number:0为假,一切非0数字为真;
  ④null/Undefined/NaN:全为假;
  ⑤Object:全为真。

var num = 1;//1、声明循环变量

while (num<10){//2、判断循环条件;
console.log(num);//3、执行循环体操作;
num++;//4、更新循环变量;
}

do-while循环

while循环特点:先判断后执行;

do-while循环特点:先执行再判断,即使初始条件不成立,do-while循环至少执行一次,也就是说do-while循环比while循环多执行一次。

var num = 10;

do{
console.log(num);//10 9 8 7 6 5 4 3 2 1 0
num--;
}while(num>=0); console.log(num);//-1

循环的嵌套

      外层循环控制行
      内层循环控制列
      循环的嵌套:解决多行多列的结构

for(var j=1;j<9;j++){
for(var i=0;i<j+1;i++){
document.write("*");
}
document.write("<br>");
}

遍历方法

for - in

for - in语句用于对数组或者对象的属性进行循环操作。

for - in循环中的代码每执行一次,就会对数组或者对象的属性进行一次操作。

let obj={'name':'programmer','age':'22','height':'180'};
for(let i in obj){
console.log(i,obj[i])
}

for - of

for...of循环可以使用的范围包括数组、Set 和 Map 结构、某些类似数组的对象(比如arguments对象、DOM NodeList 对象)、后文的 Generator 对象,以及字符 串。

JavaScript 原有的for-in循环,只能获得对象的键名,不能直接获取键值。ES6 提供for...of循环,允许遍历获得键值

数组操作:

 var arr = ['a', 'b', 'c', 'd'];

        for (let a in arr) {
console.log(a); // 0 1 2 3
} for (let a of arr) {
console.log(a); // a b c d
}

类似数组的对象操作:

        // 字符串
var str = "hello"; for (let s of str) {
console.log(s); // h e l l o
} // DOM NodeList对象
let paras = document.querySelectorAll("p"); for (let p of paras) {
p.classList.add("test");
} // arguments对象
function printArgs() {
for (let x of arguments) {
console.log(x);
}
}
printArgs('a', 'b');// 'a' 'b'

循环控制语句

1、break:跳出本层循环,继续执行循环后面的语句。
    如果循环有多层,则break只能跳出一层。
      2、continue:跳过本次循环剩余的代码,继续执行下一次循环。
    ①对与for循环,continue之后执行的语句,是循环变量更新语句i++;
    ②对于while、do-while循环,continue之后执行的语句,是循环条件判断;
    因此,使用这两个循环时,必须将continue放到i++之后使用,否则continue将跳过 i++进入死循环。

 for(var i=0;i<10;i++){
if(i == 5){
break;
}
console.log(i);//0,1,2,3,4
} for(var i=0;i<10;i++){
if(i == 5){
continue;
}
console.log(i);//0,1,2,3,4,6,7,8,9
}

  

js中的循环方式及各种遍历的方法的更多相关文章

  1. js中的循环

    js中的循环是我们经常要用到的,现在进行一些归纳. 一.javascript种的循环. 1.循环对象 var o = { name: 'Jack', age: 20, city: 'Beijing' ...

  2. java和js中for循环的区别

    java中for循环,先执行语句后循环 for (int i=1;i<10;i++){ for(int b=1;b<=i;b++){ System.out.print(b+"*& ...

  3. js中的循环语句

    js中的循环语句可分为三种:1.while:2.do……while:3.for. while的语法为 while (exp) {    //statements;} var a=1,b=0; whil ...

  4. js中for循环的研究

    转自:http://blog.csdn.net/lushuaiyin/article/details/8541500 <html> <body> <b><ce ...

  5. js中页面刷新和页面跳转的方法总结

    .js中cookie的基本用法简介 2009-12-15 js中页面刷新和页面跳转的方法总结 文章分类:Web前端 关键字: javascript js中页面刷新和页面跳转的方法总结 1.histor ...

  6. js中的回调函数的理解和使用方法

    js中的回调函数的理解和使用方法 一. 回调函数的作用 js代码会至上而下一条线执行下去,但是有时候我们需要等到一个操作结束之后再进行下一个操作,这时候就需要用到回调函数. 二. 回调函数的解释 因为 ...

  7. js中页面刷新和页面跳转的方法总结 [ 转自欢醉同学 ]

    .js中cookie的基本用法简介 2009-12-15 js中页面刷新和页面跳转的方法总结 文章分类:Web前端 关键字: javascript js中页面刷新和页面跳转的方法总结 1.histor ...

  8. js中for循环遍历的写法

    众所周知,for循环是编程中必不可少的知识点:那么如何高效的写出循环呢? 我们要先知道for循环的基础样式是由自有变量自增自减和if判组成的: 1 for(条件){ 2 执行语句 3 } 而for循环 ...

  9. JS中的循环嵌套 BOM函数

    [嵌套循环特点]                           外层循环转一次,内层循环转一圈              外层循环控制行数,内层循环控制每行元素个数             [做 ...

随机推荐

  1. 微服务SpringCloud之Spring Cloud Config配置中心Git

    微服务以单个接口为颗粒度,一个接口可能就是一个项目,如果每个项目都包含一个配置文件,一个系统可能有几十或上百个小项目组成,那配置文件也会有好多,对后续修改维护也是比较麻烦,就和前面的服务注册一样,服务 ...

  2. JavaScript数据结构——栈的实现与应用

    在计算机编程中,栈是一种很常见的数据结构,它遵从后进先出(LIFO——Last In First Out)原则,新添加或待删除的元素保存在栈的同一端,称作栈顶,另一端称作栈底.在栈中,新元素总是靠近栈 ...

  3. 用HTML5的Audio标签做一个歌词同步的效果

    HTML5出来这么久了,但是关于它里面的audio标签也就用过那么一次,当然还仅仅只是把这个标签插入到了页面中.这次呢就刚好趁着帮朋友做几个页面,拿这个audio标签来练练手. 首先你需要向页面中插入 ...

  4. 解决跨域session 同步问题

    跨域来源:(前端站点和后端API布署到不同的站点) 解决方案 一.服务端设置 1.配置允许跨域请求 public class BaseAction { /** * 支持跨域请求 * @author f ...

  5. 高性能MySQL之基础架构

    一.背景 为什么我们需要先学习MYSQL的基础架构先呢? 原因很简单,当我们需要了解一件事物的时候,我们只有站在宏观的层面,才能层层剥丝抽茧的去理解问题.举个例子,我们要看一个框架的源码,一开始就想进 ...

  6. 【游记】NOIP2018复赛

    声明 我的游记是一个完整的体系,如果没有阅读过往届文章,阅读可能会受到障碍. ~~~上一篇游记的传送门~~~ 前言 参加完NOIP2018的初赛过后,我有点自信心爆棚,并比之前更重视了一点(也仅仅是一 ...

  7. 统一流控服务开源:基于.Net Core的流控服务

    先前有一篇博文,梳理了流控服务的场景.业界做法和常用算法 统一流控服务开源-1:场景&业界做法&算法篇 最近完成了流控服务的开发,并在生产系统进行了大半年的验证,稳定可靠.今天整理一下 ...

  8. Java枚举类型 enum

    定义 An enum type is a special data type that enables for a variable to be a set of predefined constan ...

  9. 搞定java String校招面试题

    今天大致的阅读了String类的源码,并刷了常见的面试题,在此做个笔记. 面试题一:判断下列程序运行结果 package String_test; public class test_1 { publ ...

  10. android ——可折叠式标题栏

    CollapsingToolbarLayout是一个作用于Toolbar上的布局,可以让Toolbar的效果变得更加丰富: 但是CollapsingToolbarLayout是不能独立存在的,它这能作 ...