You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

运行证书生成脚本时遇Utilities.formatDate参数不匹配错误

问题解决:Utilities.formatDate参数不匹配异常

错误原因

Utilities.formatDate()方法要求第一个参数必须是Date类型对象,但你传入的date变量是字符串类型,导致参数签名与方法要求不匹配,触发了这个异常。

修复方案

情况1:date是标准日期格式字符串(如"YYYY-MM-DD"、"MM/DD/YYYY"等)

直接将字符串转换为Date对象后传入方法:

// 转换字符串为Date对象
const dateObj = new Date(date);
// 替换幻灯片中的日期占位符
empSlide.replaceAllText("<<Date>>", Utilities.formatDate(dateObj, Session.getScriptTimeZone(), "dd, MMMM, yyyy"));

情况2:date是非标准日期格式字符串

如果你的date是自定义格式(比如"DD-MM-YYYY"),需要先拆分解析后构造Date对象:

// 示例:假设date格式为"DD-MM-YYYY"
const [day, month, year] = date.split("-");
// 注意:JavaScript的Date月份是0基索引(0=1月,11=12月),所以要减1
const dateObj = new Date(year, month - 1, day);
empSlide.replaceAllText("<<Date>>", Utilities.formatDate(dateObj, Session.getScriptTimeZone(), "dd, MMMM, yyyy"));

验证步骤

可以先添加一行代码确认date的类型,排查问题:

console.log(typeof date); // 如果输出为"string",则说明需要转换类型

内容的提问来源于stack exchange,提问作者Matthew Harrison

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.23 08:09:24