javascript - Javascript 中的控制流和迭代
问题描述
我需要遍历数组并将一个数字乘以 10,如果它大于或等于 5。这是代码:
const timesTenIfOverFive = [23, 9, 11, 2, 10, 6];
for (let i = 0; i < timesTenIfOverFive.length; i++) {
if (i >= 5) {
console.log(timesTenIfOverFive[i] * 10);
} else {
console.log(timesTenIfOverFive[i]);
}
}
console.log(timesTenIfOverFive);
// -> should print [230, 90, 110, 2, 100, 60]
谢谢。
解决方案
您需要访问该元素并对其进行更改。
const timesTenIfOverFive = [23, 9, 11, 2, 10, 6];
for (let i = 0; i < timesTenIfOverFive.length; i++) {
if(timesTenIfOverFive[i]>=5){
timesTenIfOverFive[i]=timesTenIfOverFive[i]*10;
}
}
console.log(timesTenIfOverFive);
另外,由于您正在更改数组,因此我建议使用 var 或 let 而不是 const ,如下所示:
var timesTenIfOverFive = [23, 9, 11, 2, 10, 6];
var res = timesTenIfOverFive.map(x=> x>=5?x*10:x);
console.log(res);
推荐阅读
- javascript - 如何防止通过某个操作调用确认?
- pyspark - 尝试连接表并获取“Resolved attribute(s) columnName#17 missing from ...”
- javascript - 追加一次 jQuery Onscroll
- go - 包:使用初始化时命名文件的重要性
- azure-active-directory - 如何使用 Azure AD SSO 访问令牌在新浏览器上登录另一个网站
- sql-server - 在 SQL Server 中每 3 分钟创建一个作业并更新表
- android - 如何为通过 localhost 提供的具有多个 SAN 的测试站点正确配置自签名证书?
- angularfire2 - AngularFireAuthGuard redirectUrl 登录后
- sql - group by 的意外输出
- swift - 如何使用协议数组或协议的参数声明泛型方法?