【问题标题】:google script ReferenceError: "date" is not defined. (line 13, file "Code")谷歌脚本参考错误:“日期”未定义。 (第 13 行,文件“代码”)
【发布时间】:2014-12-18 01:26:07
【问题描述】:

我不知道为什么会出现此错误。该表可在此处找到:https://docs.google.com/spreadsheets/d/1gBXtHjEhnNSEkJYq2upCWtwkj1ZLWiUYv6KSuMH8Nds/edit?usp=sharing

这是脚本的第一部分,它似乎挂断了。最后一行是错误消息中引用的第 13 行。

function pushToCalendar() {
    //spreadsheet variables   
    var sheet = SpreadsheetApp.getActiveSheet();
    var headerRows = 1;
    var range = sheet.getDataRange();
    var data = range.getValues();
    for (var i in data) {
        if (i < headerRows) continue;
        var row = data[i]
        var tstart = new Date(row[8]);
        tstart.setDate(date.getDate());
    }
}

【问题讨论】:

    标签: javascript google-apps-script


    【解决方案1】:

    因为 getDate() 仅适用于日期对象,并且“日期”未在您当前的代码中定义为日期对象。使用任何 Date 对象,或者你可以这样做,tstart.setDate((new Date()).getDate());

    【讨论】:

    • 感谢您的回复!我更改了代码: tstart.setDate(new Date.getDate());现在我得到了这个:“执行失败:TypeError:(类)@634baebc 不是函数,它是未定义的。(第 13 行,文件“代码”)[0.45 秒总运行时间]”
    • 我走了一条不同的路,能够完成我想要的。感谢您的帮助!
    • 您收到一个错误,因为存在拼写错误。 It's not new Date.getDate(),但它是new Date().getDate()
    • 我发现了一些脚本,显示了创建事件的另一种方式。所以我能够删除那个 tstart 部分。我将更新该虚拟表,以便任何人如果有兴趣都可以查看。我非常感谢您的帮助。
    【解决方案2】:

    我走了一条不同的路,并且能够完成我想要的。

    【讨论】:

    • @Luke:如果你分享你走的“不同路线”,对未来的观众会更有帮助。
    猜你喜欢
    • 1970-01-01
    • 2023-03-06
    • 2022-11-07
    • 1970-01-01
    • 2014-11-10
    • 1970-01-01
    • 1970-01-01
    • 2014-10-03
    • 1970-01-01
    相关资源
    最近更新 更多