谷歌应用程序脚本:奇怪的"丢失的声明之前"错误
Google Apps Script: strange "Missing ; before statement." error
我正在编写一个简单的脚本来废弃一些报告编号。我收到错误消息"声明前缺少;",这似乎不是对当前问题的准确描述。
我试着省略了一些代码,但错误消息看起来相当随机。我怀疑我使用的某些类有问题,但我没有主意。
这是我的代码:
function getStats() {
var stats = {'id': '',
'impressions': 0,
'clicks': 0,
'conversions': 0,
'cpa': 0,
'cost': 0},
campaignIterator = AdWordsApp.campaigns().get(),
campaign,
campaignstats;
Logger.log('Fetching stats for last 7 days.');
while (campaignIterator.hasNext()) {
var campaign = campaignIterator.next();
var campaignstats = campaign.getStatsFor('LAST_7_DAYS');
var stats['impressions'] = stats['impressions'] + campaignstats.getImpressions();
var stats['clicks'] = stats['clicks'] + campaignstats.getClicks();
var stats['conversions'] = stats['conversions'] + campaignstats.getConversions();
var stats['cost'] = stats['cost'] + campaignstats.getCost();
}
var stats['cpa'] = stats['cost']/stats['conversion'];
}
function main() {
getStats();
}
谢谢你的帮助!
从while
循环中的每一行以及之后的语句中删除var
语句。
除了已经定义了所有这些变量之外(尽管重新定义同一个变量不会导致错误),还存在语法错误,因为不能在变量声明中包含方括号,如下所示:
var stats['impressions'] = ...
试试这个:
while (campaignIterator.hasNext()) {
campaign = campaignIterator.next();
campaignstats = campaign.getStatsFor('LAST_7_DAYS');
stats['impressions'] += campaignstats.getImpressions();
stats['clicks'] += campaignstats.getClicks();
stats['conversions'] += campaignstats.getConversions();
stats['cost'] += campaignstats.getCost();
}
stats['cpa'] = stats['cost']/stats['conversion'];
还请注意,我冒昧地介绍了+=
运算符。以下两个语句是等效的,但后者不太容易键入,(可以说)更容易阅读:
x[y] = x[y] + z;
x[y] += z;
相关文章:
- Dojo不解析自定义小部件的模板html中的小部件声明性
- 直接在函数声明上使用function.prototype.bind
- 铬:“;未捕获的语法错误:意外的标记:"
- 可以设置“;文件名"发生错误时显示的内联脚本标记的
- JS表单提交"无法使用Chrome数据保护程序加载此页面.尝试重新加载页面.调试信息:POST CISmtuK
- 检测电话窃听,即:<a href="电话:xxx">在UIWebview上
- 获取HTML属性中CSS声明的值
- 使用“+="操作人员
- //而不是在src=“”上使用http://"属性
- "未捕获的语法错误:意外的标记}"
- 对API数据使用声明性绑定
- 可以<脚本类型=“;text/javascript”>window.location=“/"</
- "实例范围”;TypeScript类的getter/setter
- Javascript复选框函数:;缺少:在属性id之后"
- "无法读取属性'id'未定义的“;解析工厂中声明的数组时
- 需要声明,但找到'"显示:无"'.跳过到下一个声明
- 淘汰高级声明javascript"用“-喜欢
- 谷歌应用程序脚本:奇怪的"丢失的声明之前"错误
- 造成这种错误的原因是什么?XML或文本声明不在entity"开头;解析xml时
- 为什么Javascript"类“;实现使用同名的函数声明覆盖类名