当前位置: 首页 > news >正文

JavaScript中的循环类型

JavaScript 中有三种主要的循环类型: forwhiledo...while

  • for: 循环指定次数。

例如:

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

 

  • while: 当条件为真时循环。

例如:

let i = 0;
while (i < 5) {console.log(i);i++;
}

 

  • do...while: 先执行一次,再判断条件。

例如:

let i = 0;
do {console.log(i);i++;
} while (i < 5);

 

JavaScript 还提供了一些高级循环控制语句,如 breakcontinue

  • break:终止循环。
  • continue: 跳过循环体中剩余的语句,直接进入下一次循环。

需要注意的是,当循环条件不正确时,会导致无限循环。所以在循环中需要注意条件的正确性。

在 JavaScript 中还有一种高级循环方式, 就是 for...offor...in

  • for...of: 遍历可迭代对象(如数组、字符串、Map、Set 等)中的每个元素。

例如:

let arr = [1, 2, 3];
for (let i of arr) {console.log(i);
}

 

  • for...in: 遍历对象中的属性。

例如:

let obj = {a:1, b:2, c:3};
for (let i in obj) {console.log(i);
}

 

需要注意的是,在使用for...in 时,会遍历对象的所有可枚举属性,包括继承的属性,而 for...of 仅遍历对象自身的属性

JavaScript 中的循环有很多种方式,可以根据需要进行选择。在编码时需要根据需要设置循环条件和循环次数,并避免无限循环和其它错误。

JavaScript 中还有一种循环控制方式,就是 forEach() 方法。

forEach() 方法是数组的一个方法,它可以遍历数组中的每个元素,并对其执行一个回调函数。

例如:

let arr = [1, 2, 3];
arr.forEach(function(element) {console.log(element);
});

 也可以使用箭头函数简化代码:

let arr = [1, 2, 3];
arr.forEach(element => console.log(element));

 还可以传递第二个参数,在回调函数中获取数组中元素的索引:

let arr = [1, 2, 3];
arr.forEach((element, index) => console.log(index, element));

 

需要注意的是,forEach() 方法不能终止循环或跳过当前元素,如果需要这样的控制,可以使用其他循环方式。

总之, forEach() 是一种简单易用的循环方式,可以用来简化数组遍历的代码,但不能提供其他的控制。

http://www.lryc.cn/news/25483.html

相关文章:

  • Spring Boot+Vue前后端分离项目练习02之网盘项目利用token进行登陆验证
  • springcloud常见面试题(2023最新)
  • 用户态驱动的两种方式-ixy学习
  • 机器学习 | 线性回归(单变量)
  • C++基础知识【3】控制语句
  • ImportError: Can not find the shared library: libhdfs3.so解决方案
  • Qt插件开发总结5--主界面嵌入插件UI
  • 一些关于linux process 和python process的记录
  • 卡尔曼滤波——一种基于滤波的时序状态估计方法
  • 什么是X6CrMo17-1
  • 软件测试是个人就能做?恕我直言,你可能是个“纯粹”的测试工具人,BUG收集器
  • 递归算法(recursion algorithm)
  • VScode下 ESP32 下载程序
  • 黑苹果日历
  • python+pytest接口自动化框架(5)-requests发送post请求
  • Linux 进程:进程控制
  • 过滤器的创建和执行顺序
  • JDK1.8 ConcurrentHashMap
  • 参考 Promise/A+ 规范和测试用例手写 Promise
  • yolov5数据集制作
  • 主板EC程序烧写异常致无法点亮修复经验
  • 【Java爬取赛事网站】命令行输出(仅供学习)
  • redis主从复制原理
  • buu刷题(第一周)
  • 算法训练营 day62 单调栈 每日温度 下一个更大元素 I
  • ChIP-seq 分析:Peak 注释与可视化(9)
  • ABB机器人配置DeviceNet总线IO板以及信号分配的具体方法示例
  • 2023 年网络安全漏洞的主要原因
  • 剑指 Offer 34. 二叉树中和为某一值的路径
  • 2023前端vue面试题(边面边更)