来自 Google 的所有回复都是表单文本问题字符串吗?

Are all responses from Google form text questions strings?

抱歉,如果这是一个愚蠢的问题。我有一个表格来收集客户的订单,并想向他们发送一封电子邮件(在提交表格时)详细说明要转入我的银行账户的金额。 e.namedValues['Number of shirts'][0] 是一个整数值,我可以操纵它然后通过 .toString() 函数将其包含在电子邮件正文中吗?

function onFormSubmit(e) {
  var name = e.namedValues['Name'][0];
  var email = e.namedValues['Email'][0];
  var shirts = e.namedValues['Number of Shirts'][0];
  var cost = shirts*25; \ per shirt
  sendEmail_(name,email,shirts,cost);
}

从 Google 表单提交的字段是 stings,即使您将验证类型设置为 Number

在对其执行数学运算之前,您需要将字符串显式转换为数字。您可以使用 Number()parseInt()

您修改后的代码:

function onFormSubmit(e) {
  var name = e.namedValues['Name'][0];
  var email = e.namedValues['Email'][0];
  var shirts = Number(e.namedValues['Number of Shirts'][0]);
  var cost = shirts*25; \ per shirt
  sendEmail_(name,email,shirts,cost);
}

将来,您可以使用 typeof 来测试它以确定变量的类型。如:

function onFormSubmit(e) {
  Logger.log(typeof e.namedValues['Number of Shirts'][0]);
}

还需要注意的是,如果您要将数字附加到字符串,或在字符串字段中包含数字。您不需要将其转换为带有 toString() 的字符串。这将隐式执行。