web前端中什么是死循环

学习笔记 03/18 前端问答

死循环是指无法靠自身的控制终止的循环,是单一程序在某一环节由于未满足脱离循环的条件而出现的持续进行循环操作的现象。死循环能让程序运行陷入停滞,严重时会拖慢电‌‌‌‌‌‌‌脑速度,是让程序员头疼的故障情况之一。

web前端中什么是死循环

本教程操作环境:windows7系统、Dell G3电脑。

循环就是重复做一件事,在编写代码的过程中,我们经常会遇到一些需要反复执行的操作,例如遍历一些数据、重复输出某个字符串等,如果一行行的写那就太麻烦了,对于这种重复的操作,我们应该选择使用循环来完成。

循环的目的就是为了反复执某段代码,使用循环可以减轻编程压力,避免代码冗余,提高开发效率,方便后期维护。

var i = 11;
do{
  document.write(i++ +"<br />");
}while(i <= 10);

while(true){
  alert(1);
}

1.png

2.png

通过循环语句可以反复的执行一段代码多次

什么是死循环

“死循环”的意思:单一程序在某一环节由于未满足脱离循环的条件而出现的持续进行循环操作的现象,是指无法靠自身的控制终止的循环。在编程中,一个靠自身控制无法终止的程序。

“死循环”能让程序运行陷入停滞,严重时会拖慢电‌‌‌‌‌‌‌脑速度,是让程序员头疼的故障情况之一。

var n = 1;
while(true){
  alert(n++);
  
  //判断n是否是10
  if(n == 10){
    //退出循环
    break;
  }  
}

像这种将条件表达式写死为true的循环叫死循环

该循环不会停止,除非浏览器关闭,死循环在开发中慎用

可以使用break来终止循环

扩展知识:web前端中的常用的循环语句

1. while循环

1.1. 语法:

while(条件表达式){ 
  语句...
}

1.2. 执行流程

  • while语句在执行时,先对条件表达式进行求值判断

    • 如果值为true,则执行循环体
  • 循环体执行完毕以后,继续对表达式进行判断

    • 如果为true,则继续执行循环体,以此类推
    • 如果值false,则终止循环

2. do…while循环

2.1. 语法:

do{   
  语句。。。
}while(条件表达式)

2.2. 执行流程

  • do…while语句在执行时,会先执行循环体

  • 循环体执行完毕以后,在对while后的条件表达式进行判断

    • 如果结果为true,则继续执行循环体,执行完毕继续判断以此类推
    • 如果结果为false,则终止循环

3. while和do…while比较

  • 实际上这两个语句功能类似,不同的格式while是先判断后执行

    • 而do…while会先执行后判断
  • do…while可以保证循环体至少执行一次

    • 而while不能

    4. for循环

    //创建一个执行10次的while循环
    //初始化表达式
    /* var i = 0;
    
    //创建一个循环,定义条件表达式
    while(i < 10){
    	//设置更新表达式
    	alert(i++);
    } */
    
     for(var i = 0 ; i < 10 ; i++ ){
    	alert(i);
    }

    3.png

    4.png

    4.1. 说明

    • for语句也是一个循环语句,也称为for循环

    • 在for循环中,为我们提供了专门的位置用来放三个表达式:

      • 初始化表达式
      • 条件表达式
      • 更新表达式

    4.2. for循环的语法:

    for(①初始化表达式;②条件表达式;④更新表达式){
      ③语句...
    }

    4.3. 执行流程

    //创建一个循环,定义初始化表达式和条件表达式
    while(var i = 0;i < 10){
    	//设置更新表达式
    	alert(i++);
    }
    • ①执行初始化表达式,初始化变量(初始化执行式只会执行一次)

    • ②执行条件表达式,判断是否执行循环

      • 如果为true,则执行循环
      • 如果为false,终止循环
    • ④执行更新表达式,更新表达式执行完毕继续重复②

    4.4. 补充简写

    • for循环中的三个部分都可以省略,也可以写在外部

    • 如果在for循环中不写任何的表达式,只写两个;

    • 此时的循环是一个死循环会一直执行下去,慎用

    for(;;;){
    	alert("hello");
    }

    (学习视频分享:)

    以上就是web前端中什么是死循环的详细内容,更多请关注本站点其它相关文章!

    本文地址:https://www.stayed.cn/item/27030

    转载请注明出处。

    本站部分内容来源于网络,如侵犯到您的权益,请 联系我

    我的博客

    人生若只如初见,何事秋风悲画扇。