Class Properties

媒体资源

properties 对象充当访问用户、文档或脚本属性的接口。具体属性类型取决于脚本调用了 PropertiesService 的哪种方法:PropertiesService.getDocumentProperties()PropertiesService.getUserProperties()PropertiesService.getScriptProperties()。属性无法在脚本之间共享。如需详细了解媒体资源类型,请参阅媒体资源服务指南

方法

方法返回类型简介
deleteAllProperties()Properties删除当前 Properties 存储区中的所有媒体资源。
deleteProperty(key)Properties在当前 Properties 存储区中删除具有给定键的媒体资源。
getKeys()String[]获取当前 Properties 存储区中的所有键。
getProperties()Object获取当前 Properties 存储区中所有键值对的副本。
getProperty(key)String获取当前 Properties 存储区中与给定键关联的值,如果不存在此类键,则返回 null
setProperties(properties)Properties在当前 Properties 存储区中设置给定对象中的所有键值对。
setProperties(properties, deleteAllOthers)Properties在当前 Properties 存储区中设置给定对象中的所有键值对,并可选择删除存储区中的所有其他属性。
setProperty(key, value)Properties在当前 Properties 存储区中设置给定键值对。

详细文档

deleteAllProperties()

删除当前 Properties 存储区中的所有媒体资源。

// Deletes all user properties.
const userProperties = PropertiesService.getUserProperties();
userProperties.deleteAllProperties();

返回

Properties - 此 Properties 存储,用于链式调用


deleteProperty(key)

在当前 Properties 存储区中删除具有给定键的媒体资源。

// Deletes the user property 'nickname'.
const userProperties = PropertiesService.getUserProperties();
userProperties.deleteProperty('nickname');

参数

名称类型说明
keyString要删除的媒体资源的键

返回

Properties - 此 Properties 存储,用于链式调用


getKeys()

获取当前 Properties 存储区中的所有键。

// Sets several properties, then logs the value of each key.
const scriptProperties = PropertiesService.getScriptProperties();
scriptProperties.setProperties({
  cow: 'moo',
  sheep: 'baa',
  chicken: 'cluck',
});
const keys = scriptProperties.getKeys();
Logger.log('Animals known:');
for (let i = 0; i < keys.length; i++) {
  Logger.log(keys[i]);
}

返回

String[] - 当前 Properties 存储区中的所有键的数组


getProperties()

获取当前 Properties 存储区中所有键值对的副本。请注意,返回的对象不是商店的实时视图。因此,更改返回对象的属性不会自动更新存储空间中的属性,反之亦然。

// Sets several script properties, then retrieves them and logs them.
const scriptProperties = PropertiesService.getScriptProperties();
scriptProperties.setProperties({
  cow: 'moo',
  sheep: 'baa',
  chicken: 'cluck',
});

const animalSounds = scriptProperties.getProperties();

// Logs:
// A chicken goes cluck!
// A cow goes moo!
// A sheep goes baa!
for (const kind in animalSounds) {
  Logger.log('A %s goes %s!', kind, animalSounds[kind]);
}

返回

Object - 当前 Properties 存储区中所有键值对的副本


getProperty(key)

获取当前 Properties 存储区中与给定键关联的值,如果不存在此类键,则返回 null

// Gets the user property 'nickname'.
const userProperties = PropertiesService.getUserProperties();
const nickname = userProperties.getProperty('nickname');
Logger.log(nickname);

参数

名称类型说明
keyString要检索的属性值的键

返回

String - 与当前 Properties 存储区中的给定键关联的值


setProperties(properties)

在当前 Properties 存储区中设置给定对象中的所有键值对。

// Sets multiple user properties at once.
const userProperties = PropertiesService.getUserProperties();
const newProperties = {
  nickname: 'Bob',
  region: 'US',
  language: 'EN'
};
userProperties.setProperties(newProperties);

参数

名称类型说明
propertiesObject一个包含要设置的键值对的对象

返回

Properties - 此 Properties 存储,用于链式调用


setProperties(properties, deleteAllOthers)

在当前 Properties 存储区中设置给定对象中的所有键值对,并可选择删除存储区中的所有其他属性。

// Sets multiple user properties at once while deleting all other user
// properties.
const userProperties = PropertiesService.getUserProperties();
const newProperties = {
  nickname: 'Bob',
  region: 'US',
  language: 'EN'
};
userProperties.setProperties(newProperties, true);

参数

名称类型说明
propertiesObject一个包含要设置的键值对的对象
deleteAllOthersBooleantrue 表示删除 properties 对象中的所有其他键值对;false 表示不删除

返回

Properties - 此 Properties 存储,用于链式调用


setProperty(key, value)

在当前 Properties 存储区中设置给定键值对。

// Sets the user property 'nickname' to 'Bobby'.
const userProperties = PropertiesService.getUserProperties();
userProperties.setProperty('nickname', 'Bobby');

参数

名称类型说明
keyString相应媒体资源的键
valueString要与键关联的值

返回

Properties - 此 Properties 存储,用于链式调用