簡體   English   中英

單步執行Google Apps腳本中的代碼(等效的VBA-GAS)

[英]Stepping through code in Google Apps Script (equivalent VBA-GAS )

在編寫我的VBA宏時,我經常使用“F8”來逐行調試宏。 Google Apps腳本中是否有類似的功能?

類似,但不一樣。

Google Apps腳本是在稱為腳本編輯器的專用IDE 1中開發的,該腳本編輯器提供對單步執行和斷點等的支持。 截圖 - 腳本編輯器

有關使用IDE進行調試的快速介紹,請參閱此視頻 在線文檔的“ 故障排除”部分包括基礎知識的快速概述。

使用參數調試函數

在IDE中,您可以選擇腳本中的任何函數來執行,然后選擇“運行”或“調試”圖標來啟動。 不幸的是,沒有辦法以這種方式將參數傳遞給函數,所以這里有幾種方法可以解決這個問題。

  1. 設置默認值。 許多方法可以在javascript中定義默認值 ,這里是使用最簡單的函數在函數上運行的調試器的圖片。 此答案中的函數toText()接受一個數字作為參數,因此對於此示例,我們將默認值強制為21 圖為調試器在第40行暫停; 如果我們繼續單步執行該函數,我們希望得到結果s == 'Twenty-one'

    屏幕截圖 - 默認為OR

  2. 寫一個測試函數。 這是一種比設置默認值更好的方法,因為它允許您編寫多個測試用例,並避免使用調試代碼污染目標函數。 作為示例,在該答案中提供了目標函數flipFlopAndFly()及其測試函數test_flipFlopAndFly() 測試功能訪問電子表格以提供用於測試目標的適當數據,因此我們可以輕松修改不同測試的數據。 另請注意,此功能包括錯誤檢查,因此通過強制默認值進行測試是不合適的。

這些基本模式有很多變化,因此可以根據自己的情況自由調整。 它將幫助您的調試功能在您撰寫有關如何逐步執行代碼時進行思考:

  • 每個重要的對象和值都存儲在var ,所以你可以看到它嗎?
  • var函數結果(返回值)是?

自定義功能

在開發或調試將從電子表格調用的自定義函數時,請記住您無法“跳轉”到IDE中。 如果需要單步執行腳本,則需要完全在IDE中工作以觀察代碼的執行。 您可以使用上述技術來調試自定義函數。


1 綜合發展環境

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM