怎么做北京pk10的网站wordpress rest图片

张小明 2026/3/13 5:27:21
怎么做北京pk10的网站,wordpress rest图片,安亭做网站公司,龙岩任做网站的哪几个比较好循环是编程的核心逻辑之一#xff0c;它让我们能够重复执行一段代码#xff0c;处理批量数据、实现自动化操作#xff0c;是JavaScript开发中不可或缺的基础能力。JavaScript提供了多种循环语句#xff0c;每种都有其适用场景和特性。本文将从基础到进阶#xff0c;全面拆…循环是编程的核心逻辑之一它让我们能够重复执行一段代码处理批量数据、实现自动化操作是JavaScript开发中不可或缺的基础能力。JavaScript提供了多种循环语句每种都有其适用场景和特性。本文将从基础到进阶全面拆解JavaScript中的循环语句帮你理清它们的用法、区别和最佳实践。一、JavaScript循环语句的核心分类JavaScript中的循环语句主要分为两大类基础循环结构for、while、do...while和迭代器循环for...in、for...of此外还有特殊的循环控制语句break、continue和ES6新增的迭代方法如forEach。我们先从最基础的循环开始讲起。1. for循环最经典的计数循环for循环是JavaScript中最常用、最灵活的循环形式尤其适合已知循环次数的场景比如遍历固定长度的数组、执行指定次数的操作。语法结构for (初始化表达式; 条件表达式; 更新表达式) { // 循环体条件为true时执行的代码 }初始化表达式循环开始前执行一次通常用于声明循环变量如let i 0条件表达式每次循环前判断结果为true则执行循环体false则终止循环更新表达式循环体执行后执行通常用于更新循环变量如i。示例遍历数组const fruits [苹果, 香蕉, 橙子]; for (let i 0; i fruits.length; i) { console.log(第${i1}个水果${fruits[i]}); } // 输出 // 第1个水果苹果 // 第2个水果香蕉 // 第3个水果橙子特点可精准控制循环次数和循环变量的步长如i 2实现隔行遍历支持嵌套循环如二维数组遍历但嵌套过深会影响性能循环变量作用域可通过let/var控制推荐用let避免变量泄漏。2. while循环条件驱动的循环while循环适用于未知循环次数仅知道循环终止条件的场景比如用户输入验证、动态数据处理。语法结构while (条件表达式) { // 循环体条件为true时执行 }示例累加直到和大于100let sum 0; let num 1; while (sum 100) { sum num; num; } console.log(累加和超过100时的总和${sum}); // 输出105注意事项必须在循环体内更新条件相关的变量否则会导致无限循环如忘记写num条件表达式首次判断为false时循环体一次都不会执行。3. do...while循环先执行后判断do...while循环是while循环的变体特点是循环体至少执行一次再判断条件是否继续循环。语法结构do { // 循环体先执行一次 } while (条件表达式);示例用户输入验证let input; do { input prompt(请输入数字1-10); } while (isNaN(input) || input 1 || input 10); console.log(你输入的有效数字是${input});特点适合“必须执行一次”的场景如表单初始验证、初始化操作结尾的分号不能省略否则会导致语法错误。4. for...in循环遍历对象的可枚举属性for...in专门用于遍历对象的可枚举属性包括原型链上的属性也可遍历数组的索引但不推荐。语法结构for (const 键名 in 对象/数组) { // 循环体键名对应对象的属性名/数组的索引 }示例遍历对象属性const person { name: 张三, age: 25, gender: 男 }; for (const key in person) { // 过滤原型链上的属性推荐 if (person.hasOwnProperty(key)) { console.log(${key}${person[key]}); } } // 输出 // name张三 // age25 // gender男注意事项遍历数组时索引是字符串类型如0可能导致意外问题会遍历原型链上的继承属性需用hasOwnProperty过滤遍历顺序不固定尤其对于非数字属性的对象。5. for...of循环遍历可迭代对象的值ES6新增的for...of是遍历可迭代对象数组、字符串、Set、Map、Generator等的首选方式直接获取值而非索引/键名。语法结构for (const 值 of 可迭代对象) { // 循环体值对应可迭代对象的每一个元素 }示例1遍历数组const numbers [10, 20, 30]; for (const num of numbers) { console.log(num); // 输出10 20 30 }示例2遍历字符串const str JavaScript; for (const char of str) { console.log(char); // 逐个输出字符J a v a S c r i p t }特点不遍历原型链属性只遍历自身元素支持break/continue/return中断循环可结合entries()获取索引和值for (const [index, num] of numbers.entries()) {console.log(索引${index}${num});}二、循环控制语句break continue除了循环本身JavaScript还提供了两个关键的控制语句用于灵活调整循环流程1. break终止整个循环立即终止当前循环跳出循环体执行循环后的代码。for (let i 1; i 5; i) { if (i 3) break; // 当i3时终止循环 console.log(i); // 输出1 2 }2. continue跳过当前次循环跳过当前循环的剩余代码直接进入下一次循环的条件判断。for (let i 1; i 5; i) { if (i 3) continue; // 跳过i3的循环 console.log(i); // 输出1 2 4 5 }三、补充数组的迭代方法forEach虽然Array.prototype.forEach()不是传统的循环语句但它是数组专用的迭代方法本质上也是循环的一种形式const arr [1, 2, 3]; arr.forEach((item, index) { console.log(索引${index}${item}); });注意forEach无法通过break/continue中断除非抛出异常不支持return返回值始终返回undefined适合简单的数组遍历复杂场景推荐for...of。四、循环语句的选型指南场景推荐循环已知循环次数如固定长度数组for循环未知循环次数先判断条件while循环必须执行一次的循环do...while循环遍历对象的属性需过滤原型链for...in配合hasOwnProperty遍历数组、字符串、Set/Map等值for...of循环简单数组遍历无需中断forEach四、循环优化与注意事项避免无限循环确保while/do...while/for的条件能最终变为falsefor...in/for...of需确认迭代对象可终止减少重复计算遍历数组时将arr.length缓存到变量尤其大数据量javascript运行// 优化前 for (let i 0; i arr.length; i) {} // 优化后 const len arr.length; for (let i 0; i len; i) {}及时中断循环使用break终止整个循环、continue跳过当前次循环减少无效执行避免遍历原型链for...in遍历对象时务必用hasOwnProperty过滤原型属性性能优先级原生for循环性能略高于for...offor...in性能最差需遍历原型链但日常开发中for...of的可读性更重要除非处理超大数据量。五、总结JavaScript 的循环语句从基础的for/while到 ES6 的for...of再到异步的for await...of覆盖了同步 / 异步、已知 / 未知次数、对象 / 数组等所有遍历场景。核心原则是根据遍历目标对象 / 数组 / 异步数据和场景次数已知 / 未知、是否必执行一次选择最合适的循环同时兼顾代码可读性和性能。六、总结JavaScript的循环语句各有侧重for循环胜在灵活可控是基础中的基础while/do...while适合条件驱动的循环for...in专用于对象属性遍历需注意原型链for...of是现代迭代的首选简洁且安全。在实际开发中需根据场景选择合适的循环遍历数组优先用for...of遍历对象用for...in固定次数用for循环条件循环用while。同时合理使用break/continue控制循环流程避免无限循环和性能问题。掌握这些循环的核心用法能让你的代码更高效、更易维护。
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

蚌埠市做网站推广网站怎样做

前言 27 岁女生从传统行业裸辞转网络安全,3 个月拿到大厂 offer:这行真的没你想的那么难 后台经常收到私信,问我一个做了 4 年传统行业(之前是线下品牌运营)的女生,为什么突然 “跨界” 转做网络安全&…

张小明 2026/3/5 3:31:06 网站建设

东莞企业推广网站制作wordpress 内网映射

实战指南:HandheldCompanion掌机伴侣深度配置与优化 【免费下载链接】HandheldCompanion ControllerService 项目地址: https://gitcode.com/gh_mirrors/ha/HandheldCompanion 你是否经常遇到Windows掌机控制器连接不稳定、功能配置复杂、游戏兼容性差等问题…

张小明 2026/3/5 3:31:09 网站建设

网站前端建设都需要什么问题新网站2个月没有收录

观点作者:科易网AI技术转移研究院当前,我国高校作为科技成果的主要产出地,正积极推进有组织科技成果转化,旨在解决“不能转”“不敢转”“不会转”等历史性难题。尽管政策环境持续优化、转化载体不断协同、人才体系逐步成型&#…

张小明 2026/3/5 3:31:10 网站建设

杭州网站推广营销服务建设工程监理网站

深入了解Chef中的重量级资源和提供者 在Chef自动化工具中,我们之前学习了轻量级资源和提供者(LWRP),它借助DSL(领域特定语言)简化了与Chef资源和提供者类交互的复杂性,为创建自定义资源和提供者提供了便捷灵活的方式。而今天,我们将聚焦于重量级资源和提供者(HWRP),…

张小明 2026/3/5 3:31:12 网站建设

那些网站做民宿网页设计与网页制作的实验报告

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个极简企业知识管理原型,功能包括:1. 上传公司文档自动构建知识图谱 2. 自然语言问答接口 3. 知识关联可视化。要求:使用预训练模型减少开…

张小明 2026/3/5 3:31:13 网站建设