常用函式(GAS)
常用函式
處理GET請求
code:javascript
function doGet(e) {
const target = e.parameter.target;
getHandler(target);
}
處理POST請求
code:javascript
function doPost(e) {
const parameter = JSON.parse(e.postData.contents);
const target = parameter.target;
postHandler(target);
}
event.parameter和event.parameters傳入的內容結構不同
event.parameter:
event.parameters:
於操作時觸發函式
「Triggers」
「Add Trigger」
「Select event type」
「On edit」or「On change」
「Executions」
確認執行狀況
回傳資料的格式
字串
return ContentService.createTextOutput("回傳字串");
HTML
return HtmlService.createHtmlOutput(HTMLString);
JSON
code:javascript
const JSONString = JSON.stringify(result);
return ContentService.createTextOutput(JSONString).setMimeType(
ContentService.MimeType.JSON
);
讀取表單
SpreadsheetApp.getActiveSpreadsheet()
SpreadsheetApp.openById(SpreadSheetID)
Spreadsheet#getSheetByName(sheetName)
Spreadsheet#getSheets()[sheetIndex]
Sheet#getRange(row, column)
行與列起始座標值是1,不是0
Sheet#getRange(row, column, numRows)
Sheet#getRange(row, column, numRows, numColumns)
Sheet#getRange(cellRangeNotation)
getRange("A1:B2")
Range#getValues()
const values = sheet.getRange("A1:C2").getValues();
const values = sheet.getRange("A1:C2").getValues().flat();
Sheet#getSheetValues(startRow, startColumn, numRows, numColumns)
行與列座標起始值是1,不是0
寫入表單
Range
Range#setValues(values)
code:javascript
const rowLength = array.length;
const colLength = array0.length; sheet.getRange(1, 1, rowLength, colLength).setValues(array);
[[1, 2], [3, 4]]
UrlFetchApp.fetch(url[, params])