【问题标题】:Google apps script - Speeding up getActiveDocument()?Google 应用程序脚本 - 加速 getActiveDocument()?
【发布时间】:2013-11-21 12:48:06
【问题描述】:

我正在编写一个脚本,将 Google 文档中的选定文本设置为大写。该脚本工作正常,但在大型文档中非常慢。所以我剥离了几乎所有东西来进行一些速度测试,我意识到这条简单的线:

      var document = DocumentApp.getActiveDocument();

已经需要 9-10 秒来处理 150 页的文档。

有没有办法加快这个过程,即预缓存“文档”,这样当我调用我的脚本时,我可以在合理的时间内使用我的getCursor()getSelection()

【问题讨论】:

  • 为什么不把它扔到全局范围内呢?它会在您第一次打开文档时运行。
  • @BryanP 我试图将变量声明为全局变量,但没有任何区别。我认为每次运行脚本时都会刷新它(这是有道理的,因为文档会随着您的编辑而变化)。
  • 全局 var document 不会在编辑文档时更改。你是如何调用脚本的?发布您认为与延迟相关的其余代码。
  • 好的,是的,每次运行任何函数时它都会查看全局变量,所以忽略它。

标签: performance google-apps-script google-docs


【解决方案1】:

你不能预先缓存这个。 为缓存提供的服务有:

  • CacheService : 只存储字符串值
  • ScriptDB : 无法在此存储文档。

所以恐怕你需要应付它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-06-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多