javascript - 如何在javascript的forEach方法中更改索引步骤?
问题描述
我是 javascript 新手,我不知道如何使用 forEach 方法更改索引步骤!
例如,我需要打印在偶数索引处的元素。我用 for 循环这样做:
for (var i=0 ; i<arr.length ; i+=2)
{
console.log(arr[i]);
}
我怎么能用 forEach 做到这一点?
解决方案
您不能使用.forEach()
方法跳过索引,但可以检查当前索引号是否为偶数。如果是,则打印该索引处的数组元素,否则什么也不做。
arr.forEach((num, idx) => {
if (idx % 2 == 0) {
console.log(num);
}
});
.forEach()
for
方法与循环相比有所不同。使用for
循环,您可以控制在使用循环遍历数组时用作数组索引的循环变量for
。
.forEach()
方法不给你控制,它只允许你指定一个回调函数,该.forEach()
方法将使用 4 个参数调用:
- 当前数组元素
- 当前数组元素的索引
.forEach()
调用哪个方法的整个数组- 用作
this
回调函数内部的值
使用.forEach()
,您无需担心初始化循环变量、循环终止条件以及如何增加循环变量。
要了解有关.forEach()
方法的更多信息,请参阅:Array.prototype.forEach()
推荐阅读
- javascript - 嵌套的承诺不按顺序执行
- express - 带有无头 WordPress CMS 和自定义 Express 服务器的 Next.js 需要每天将数据保存到 WordPress 数据库
- swift - SecKeychainSetUserInteractionAllowed 已弃用
- flutter - 颤振`预期有 6 个位置参数,但找到了 1 个。` 尝试添加缺少的参数
- docker - 无法在 Airflow UI 中编辑 spark_default
- .htaccess - .htaccess Case-Sensitivity and File Extensions
- mysql - 加入两个表并获得一个的计数,但所有结果都匹配另一个上的 ID
- python - 如何在python中将字符串转换为数字
- next.js - Next.js - 类型错误:找不到名称“StaticImageData”
- linux - 有没有办法只输出一个目录本身的长列表而不是它的内容