JavaScript如何逐行打印数组相邻的两个元素?
JavaScript实现数组相邻元素逐行配对打印
核心思路
遍历数组时到倒数第二个元素就停止,每次取当前元素和它的下一个相邻元素,按x - y的格式拼接输出即可,逻辑非常简单,注意处理好边界不要越界访问数组就行。
最直观的for循环实现
const arr = [10, 20, 30, 40, 50]; // 循环终止条件设为arr.length - 1,避免取到不存在的数组下标 for (let i = 0; i < arr.length - 1; i++) { console.log(`${arr[i]} - ${arr[i + 1]}`); }
运行后控制台输出和预期完全一致:
10 - 20 20 - 30 30 - 40 40 - 50
可选的forEach实现
如果习惯用数组内置迭代方法,也可以用forEach写,只需要跳过最后一个没有后续相邻元素的项即可:
const arr = [10, 20, 30, 40, 50]; arr.forEach((currentItem, index) => { if (index !== arr.length - 1) { console.log(`${currentItem} - ${arr[index + 1]}`); } })
踩坑提醒:如果边界判断写错,循环走到最后一个元素时去取下一位,会拼接出50 - undefined的错误结果,写的时候要注意。
内容的提问来源于stack exchange,提问作者malik adnan
相关产品推荐
相关产品推荐

