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

编程笔记 html5cssjs 079 JavaScript 循环语句

编程笔记 html5&css&js 079 JavaScript 循环语句

  • 循环语句
      • 1. `for` 循环
      • 2. `while` 循环
      • 3. `do...while` 循环
      • 4. `for...in` 循环
      • 5. `for...of` 循环
  • 小结

在JavaScript中,有几种不同的循环语句用于执行重复的代码块。

循环语句

以下是一些主要的循环类型及其详解与示例:

1. for 循环

// 标准的 for 循环包含三个表达式:初始化、条件判断和更新部分
for (let i = 1; i <= 10; i++) {
    console.log(i); // 输出 1 到 10 的数字
}

// 示例一:输出三角形图案
for (let i = 1; i <= 5; i++) {
    let line = '';
    for (let j = 1; j <= i; j++) {
        line += '* ';
    }
    console.log(line);
}
// 结果:
// * 
// * *
// * * *
// * * * *
// * * * * *

// 示例二:计算1到100的总和
let sum = 0;
for (let i = 1; i <= 100; i++) {
    sum += i;
}
console.log(sum); // 输出结果为5050

2. while 循环

// while 循环会在条件满足时一直执行循环体内的代码
let count = 1;
while (count <= 10) {
    console.log(count);
    count++;
}

// 示例:计算1加到某个数(例如100)的总和
let total = 0;
let number = 1;
while (number <= 100) {
    total += number;
    number++;
}
console.log(total); // 输出结果为5050

3. do...while 循环

// do...while 循环至少会执行一次循环体,然后再检查条件是否满足
let index = 0;
do {
    console.log(index);
    index++;
} while (index < 5);

// 示例:同样计算1到某个数的总和,但确保至少执行一次循环
let sumDoWhile = 0;
let currentNumber = 1;
do {
    sumDoWhile += currentNumber;
    currentNumber++;
} while (currentNumber <= 100);
console.log(sumDoWhile); // 输出结果同样为5050

4. for...in 循环

// for...in 循环用于遍历对象的所有可枚举属性
let obj = { a: 1, b: 2, c: 3 };
for (let prop in obj) {
    if (obj.hasOwnProperty(prop)) {
        console.log(prop + ': ' + obj[prop]);
    }
}
// 结果:
// a: 1
// b: 2
// c: 3

// 注意:在实际开发中,为了安全起见通常会检查属性是否是对象自身的属性而非继承的。

5. for...of 循环

// for...of 循环用于遍历可迭代对象,如数组、Set、Map等
let array = [1, 2, 3, 4, 5];
for (let value of array) {
    console.log(value);
}
// 结果:
// 1
// 2
// 3
// 4
// 5

// 示例:计算数组元素的总和
let numbers = [1, 2, 3, 4, 5];
let sumOfArray = 0;
for (let num of numbers) {
    sumOfArray += num;
}
console.log(sumOfArray); // 输出结果为15

以上就是JavaScript中常用的循环结构及其示例。

小结

结合一些在学习中可以用到的处理内容来练习。比如输出一下九九乘法表。


http://www.kler.cn/a/227189.html

相关文章:

  • 代码随想录算法训练营|day25
  • 2024 AI 前端:回首展望,光芒未至,破晓之前!
  • 科普类——双目视觉在自动驾驶中存在的问题、挑战以及解决方案(三)
  • Linux基础知识总结(包含各种命令详解)
  • 未来电话呼叫技术的社会影响与发展趋势----云微呼
  • Python 数据分析(PYDA)第三版(一)
  • Open CASCADE学习|拓扑变换
  • vit细粒度图像分类(九)RAMS-Trans学习笔记
  • ChatGPT高效提问—基础知识(NLP)
  • 政安晨:示例演绎Python的函数与获取帮助的方法
  • vscode无法ssh远程连接到服务器:远程主机可能不符合 glibc 和 libstdc++ VS Code 服务器的先决条件
  • 01神经网络的理论及实现
  • 【开源】SpringBoot框架开发大学计算机课程管理平台
  • LeetCode第 123 场双周赛个人题解
  • 网络原理-TCP/IP(5)
  • Matplotlib箱形图的绘制与高级技巧解析【第57篇—python:Matplotlib箱形图】
  • 成都爱尔周进解析半飞秒手术--充满多样性的屈光手术方式
  • docker elasticsearch8启动失败
  • 初始mach-o文件及在项目中应用
  • Web实战丨基于django+hitcount的网页计数器