屬性服務可讓您將簡單資料儲存在鍵/值組合中,資料範圍限於一個指令碼、單一指令碼使用者或使用外掛程式的文件。通常用於儲存開發人員設定或使用者偏好設定。屬性之間一律不會共用屬性。
如要查看資源服務的每日配額與儲存空間限制,請參閱 Google 服務的配額。
房源商店比較
PropertiesService
全域物件提供三種方法,每個方法都會傳回類似的 Properties
物件,但存取權不同,如下表所示:
指令碼內容 | 使用者屬性 | 文件內容 | |
---|---|---|---|
存取方法 | getScriptProperties() |
getUserProperties() |
getDocumentProperties() |
資料共用對象 | 所有指令碼、外掛程式或網頁應用程式的使用者 | 指令碼、外掛程式或網頁應用程式目前的使用者 | 已開啟文件中外掛程式的所有使用者 |
常見用途 | 應用程式層級設定資料,例如開發人員外部資料庫的使用者名稱和密碼 | 使用者專屬設定,例如公製或英制單位 | 文件專屬資料,例如內嵌圖表的來源網址 |
資料格式
屬性服務會將所有資料儲存為鍵/值組合的字串。非字串的資料類型會自動轉換為字串,包括已儲存物件中的方法。
正在儲存資料
如要儲存單一值,請呼叫適當儲存庫的 Properties.setProperty(key,
value)
方法,如以下範例所示:
如要大量儲存資料,請將鍵/值組合的對應關係傳送至 Properties.setProperties(properties)
。參數中每個物件的鍵/值組合會做為個別的屬性儲存:
讀取資料
如要擷取先前儲存的單一值,請呼叫 Properties.getProperty(key)
:
如要擷取目前屬性儲存庫中的所有值,請呼叫 Properties.getProperties()
:
修改資料
getProperty()
和 getProperties()
方法會傳回儲存資料的副本,而非即時檢視畫面,因此變更傳回物件不會更新屬性儲存庫中的值。如要更新儲存區中的資料,只要再次儲存資料即可:
刪除資料
如要刪除單一值,請呼叫 Properties.deleteProperty(key)
:
如要刪除目前儲存庫中的所有屬性,請呼叫 Properties.deleteAllProperties()
:
手動管理指令碼屬性
您可在專案設定頁面,手動新增最多 50 個自訂屬性,做為鍵/值組合中的字串。如要新增超過 50 個屬性,則必須使用上述儲存資料中所述的方法,以程式輔助方式新增屬性。在專案設定頁面設定指令碼屬性時,您無法參照指令碼變數。
新增指令碼屬性
- 開啟 Apps Script 專案。
- 按一下左側的「專案設定」圖示 。
- 如要新增第一個屬性,請按一下「Script 屬性」下方的「Add Script 屬性」。
- 如要新增第二種和後續的屬性,請依序點選「Script 屬性」下方的「Edit 指令碼屬性」>「新增指令碼屬性」。
- 在「Property」(屬性) 部分輸入鍵名。
- 在「Value」(值) 部分輸入該鍵的值。
- (選用) 如要新增更多屬性,請按一下「新增指令碼屬性」。
- 按一下「儲存指令碼屬性」。
編輯指令碼屬性
- 開啟 Apps Script 專案。
- 按一下左側的「專案設定」圖示 。
- 按一下「指令碼屬性」下方的「編輯指令碼屬性」。
- 針對您要變更的每個屬性變更鍵名和鍵/值。
- 按一下「儲存指令碼屬性」。
刪除指令碼屬性
- 開啟 Apps Script 專案。
- 按一下左側的「專案設定」圖示 。
- 按一下「指令碼屬性」下方的「編輯指令碼屬性」。
- 在要刪除的資源旁,點按「移除」圖示 。
- 按一下「儲存指令碼屬性」。