如何在Google Apps Script中用forEach更优遍历多维数组?
Google Apps Script中用forEach遍历多维数组的最优写法
你的现有写法虽然能运行,但存在两个小问题:一是依赖values[0]的长度,若数组为空或行长度不一致时会出错/输出undefined;二是写法不够直观。下面是几种更优的实现方式:
1. 最安全直观的基础写法
直接遍历每一行的元素,不依赖其他行的长度,兼容性和容错性更好:
values.forEach(function(row) { row.forEach(function(cell) { console.log(cell); }); });
2. 简洁的箭头函数写法
Google Apps Script支持ES6语法,用箭头函数可以大幅简化代码,逻辑清晰时非常适用:
values.forEach(row => row.forEach(cell => console.log(cell)));
3. 需要行/列索引的场景
如果需要获取元素所在的行号和列号,可以同时接收索引参数:
values.forEach((row, rowIdx) => { row.forEach((cell, colIdx) => { console.log(`行${rowIdx},列${colIdx}:${cell}`); }); });
对比你的原写法,以上几种方式都避免了对首行长度的依赖,同时代码更简洁易读,是遍历多维数组更优的选择。
内容的提问来源于stack exchange,提问作者Einarr
相关产品推荐
相关产品推荐

