如何在数组的for循环中添加条件语句判断心仪车型?
数组遍历条件判断实现及无限循环排查
一、实现需求的正确代码
你需要在循环内部添加条件判断,对比当前遍历的车型与心仪车型,输出对应提示。代码如下:
const vehicles = ["Audi", "BMW", "Seat", "Opel", "Peugeot"]; const fav = "Seat"; // 用const更合适,因为心仪车型不会被修改 for (let i = 0; i < vehicles.length; i++){ const currentCar = vehicles[i]; if (currentCar === fav) { console.log(`The ${currentCar} IS my favourite vehicle`); } else { console.log(`The ${currentCar} is not my favourite vehicle`); } }
运行这段代码就能得到你期望的输出。
二、无限循环的常见原因排查
你之前添加条件后出现无限循环,大概率是以下几种情况:
- 意外修改循环变量
i:比如在条件语句里写了i--或其他改变i值的代码,导致i无法正常递增到vehicles.length,循环永远无法终止。 - 错误的循环条件:比如把
i < vehicles.length写成i > vehicles.length,或是写了永远为真的条件(比如true),这种情况循环会一直运行。 - 使用
var声明i:var的作用域是函数级,若在循环内部的条件块里有嵌套函数或其他操作,可能意外修改全局的i值,导致循环失控。改用let声明i就能避免这个问题,因为let的作用域是块级,每个循环迭代的i都是独立的。
内容的提问来源于stack exchange,提问作者Karolina Zdeba
相关产品推荐
相关产品推荐

