AppsScript-需要优化建议或最大运行时间绕过
创始人
2024-11-10 08:30:21
0
  1. 优化代码:
  • 减少代码中的循环次数;
  • 使用缓存机制避免频繁读取数据;
  • 使用数组批量操作数据等。
  1. 把代码拆成多个函数并使用触发器:
  • 把长时间运行的函数拆成多个较短的函数,并使用在指定时间运行的触发器,每次运行一部分代码,从而避免达到最大运行时间限制。

示例代码:

// 使用缓存机制避免频繁读取数据 function getData() { var cache = CacheService.getScriptCache(); var cachedData = cache.get('data'); if (cachedData) { return JSON.parse(cachedData); } else { var data = // 处理数据的代码 cache.put('data', JSON.stringify(data), 300); // 缓存数据 5 分钟 return data; } }

// 把代码拆成多个函数并使用触发器 function processData(data) { // 处理一部分数据,并返回剩余数据 return remainingData; }

function processAllData() { var data = getData(); var remainingData = processData(data); if (remainingData.length > 0) { ScriptApp.newTrigger('processAllData') .timeBased() .after(30 * 1000) // 30 秒后再次运行 .create(); } }

// 使用数组批量操作数据 function processBatchData() { var data = getData(); var batchSize = 100; var startRow = 2; // 数据的起始行数 var numRows = data.length; // 要处理的总行数 var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet(); var row = startRow; while (row <= numRows) { var values = data.slice(row - startRow, row - startRow + batchSize); // 处理 values 数组中的数据 sheet.getRange(row, 1, values.length, values[0].length).setValues(values); row += batchSize; } }

相关内容

热门资讯

9分钟指南书!九天大厅挂价格,... 9分钟指南书!九天大厅挂价格,新祥心辅助脚本(辅助)一贯真的是有辅助(哔哩哔哩)一、新祥心辅助脚本可...
第十分钟窍要!杭麻圈辅助工具,... 第十分钟窍要!杭麻圈辅助工具,天酷游戏交易平台(辅助)原来是有辅助(哔哩哔哩)1、完成天酷游戏交易平...
第六分钟举措!四川游戏家园手机... 第六分钟举措!四川游戏家园手机版辅助,三哥玩app辅助(辅助)果然有挂下载(哔哩哔哩)1、金币登录送...
第八分钟攻略!金州水鱼脚本,新... 第八分钟攻略!金州水鱼脚本,新九五有没有脚本(辅助)果然有挂软件(哔哩哔哩)1、让任何用户在无需新九...
第六分钟秘籍!天天川南辅助,超... 第六分钟秘籍!天天川南辅助,超级三加一辅助工具(辅助)果然是真的安装(哔哩哔哩)1、超级三加一辅助工...
第七分钟教程书!拼三张辅助器,... 第七分钟教程书!拼三张辅助器,海贝之城辅助软甲下载(辅助)原来真的有平台(哔哩哔哩)1、用户打开应用...
第五分钟指引!蜀渝牌乐汇挂机软... 第五分钟指引!蜀渝牌乐汇挂机软件,天酷辅助巡查系统(辅助)果然真的是有安装(哔哩哔哩)该软件可以轻松...
8分钟讲义!微友辅助器免费版v... 8分钟讲义!微友辅助器免费版v2.0,新财神正版辅助挂(辅助)真是真的是有辅助器(哔哩哔哩)1、8分...
8分钟策略!椰岛长胜辅助,随意... 8分钟策略!椰岛长胜辅助,随意玩聚乐部辅助(辅助)本来是有插件(哔哩哔哩)1、该软件可以轻松地帮助玩...
2分钟课程!陕麻圈是不是可以作... 2分钟课程!陕麻圈是不是可以作必弊,蜜蜂大厅辅助插件(辅助)一直真的是有软件(哔哩哔哩)1)陕麻圈是...