gpt4 book ai didi

javascript - 使用属性存储;添加到信息数组,检索信息

转载 作者:行者123 更新时间:2023-12-01 00:50:53 25 4
gpt4 key购买 nike

我有一个正在更新表格的附加组件。我想在用户每次运行两个函数之一时存储信息,因此我创建了一个函数来将信息推送到文档属性。最终,一旦收集到一定数量的值,我想将这些数据发送到我这边的工作表中。我遇到的问题是,当我运行测试函数来记录所包含的数据时,它只显示最新的数据;我不确定是否要添加或替换现有数据。数据对应包括用户的电子邮件地址以及由调用此 storeStats 函数的两个函数之一创建的工作表选项卡的名称。简而言之:*在向 Property Store 添加数据之前,我是否需要声明 Property Store 的名称?*如何在不删除旧数据的情况下添加更多数据?*如何查看存储了多少数据?我正在考虑 array.length 的思路,但不确定这是否适用于 Properties*我假设我需要使用解析命令来检索它并发送到我最后的工作表。这可能会在稍后出现在一个单独的问题中,但任何想法都会受到赞赏。

function storeStats(sheetTitle) {
var docProps = PropertiesService.getDocumentProperties();
var userID = Session.getActiveUser().getEmail();
var thisData = {user:userID, sheet:sheetTitle};
var thisDataStr = JSON.stringify(thisData);
var useData = "USEDATA"; //name of the properties store maybe
docProps.setProperties(useData,thisDataStr);
Logger.log(useData.length);
//send when enough values are present
//use parse to extract and send?
// /*if(/*see how many values are in the data set*/) {
//parse values from value set array
//send the whole batch to the range on the collection sheet
//} */

}

到目前为止,没有创建任何错误,但这仅返回一个电子邮件地址和一个工作表名称,而不是从先前函数调用发送的所有值。

最佳答案

docProps.setProperties(useData,thisDataStr); 不会将数据添加到“USEDATA”,如果您想向其中添加或附加数据,您需要执行以下操作:

docprops.setProperty('USEDATA', docprops.getProperty('USEDATA') + thisDataStr);

示例:

function propertiesTest() {
var ps=PropertiesService.getScriptProperties();
ps.setProperty('test','');
for(var i=0;i<10;i++) {
ps.setProperty('test',ps.getProperty('test') + '\n' + i)
}
Logger.log(ps.getProperty('test'));
}

关于javascript - 使用属性存储;添加到信息数组,检索信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56976437/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com