Javascript 返回空值的Google应用程序脚本
我有一个谷歌应用程序脚本功能,可以从电子表格中提取数据。它能够愉快地记录信息,然后我将数据返回到javascript函数。但是,当我试图对信息进行字符串化并发出警报时,它会发出“null”警报 我不知道我哪里出错了 调用GAS函数的Javascript:Javascript 返回空值的Google应用程序脚本,javascript,google-apps-script,Javascript,Google Apps Script,我有一个谷歌应用程序脚本功能,可以从电子表格中提取数据。它能够愉快地记录信息,然后我将数据返回到javascript函数。但是,当我试图对信息进行字符串化并发出警报时,它会发出“null”警报 我不知道我哪里出错了 调用GAS函数的Javascript: google.script.run.withSuccessHandler(getNews).getTheNews(); function getTheNews(){ var ss = SpreadsheetApp.openByUrl(u
google.script.run.withSuccessHandler(getNews).getTheNews();
function getTheNews(){
var ss = SpreadsheetApp.openByUrl(url);
var ws = ss.getSheetByName("NewsFeed");
var theNews = ws.getRange(3, 2, ws.getLastRow()-2, 1).getValues();
Logger.log(theNews);
return theNews;
}
气体功能:
google.script.run.withSuccessHandler(getNews).getTheNews();
function getTheNews(){
var ss = SpreadsheetApp.openByUrl(url);
var ws = ss.getSheetByName("NewsFeed");
var theNews = ws.getRange(3, 2, ws.getLastRow()-2, 1).getValues();
Logger.log(theNews);
return theNews;
}
气体测井:
接收信息的Javascript函数:
function getNews(theNews){
var mystr = JSON.stringify(theNews);
alert(mystr);
}
问题和解决方法:
不幸的是,在当前阶段,日期对象似乎无法直接从GoogleApps脚本端返回到Javascript端。我也可以复制你的情况。我想这就是你的问题所在。那么,作为当前的解决方案,下面的修改如何
修改脚本:
在此修改中,日期对象被转换为字符串并发送到Javascript端。在Javascript端,日期字符串被转换为日期对象
HTML和Javascript端:
谷歌应用程序脚本端:
- 我认为在这种情况下,也可以使用
而不是c.getTime()
c.toISOString()
- 例如,如果要检索单元格上的显示值,还可以进行如下修改。在这种情况下,不需要修改Javascript
- 从
var theNews = ws.getRange(3, 2, ws.getLastRow()-2, 1).getValues();
- 到
var theNews = ws.getRange(3, 2, ws.getLastRow()-2, 1).getDisplayValues();
- 从
- 我也在谷歌问题追踪器上发现了这个问题。但当我看到状态时,它似乎“无法修复(预期行为)”