Utilities.formatString 未按预期工作

Utilities.formatString not working as expected

我写了一个小脚本,以便使用函数 Utilities.formatString

来获得由字符串字符组成的增量 ID

示例:RQ001 -> RQ002 --> RQ00n

function myFunction() {
  var str = "RQ001";
  var res = str.substring(2, 5);    'ok
  res=Number(res)+1;    'ok
  res=res.toString();   'ok
  res = "RQ" & Utilities.formatString("000", res);  'not working }

结果为“0”。

预先感谢您的帮助。

& 不是字符串连接运算符。请改用“+”。

你有两个问题。您需要使用“+”进行字符串连接,而您创建字符串的方法没有像您希望的那样正确返回“002”。

function myFunction() {
  var str = "RQ001";
  var res = Number(str.substring(2, 5)) + 1;
      res = "000" + String(res);
      res = "RQ" + res.substring(res.length - 3, res.length);
}

使用 substring() 格式化字符串的数字,然后将 "RQ" 附加到后面的开头。

您还可以格式化函数以将原始密钥作为参数。这样,您就可以说 newKey = incrementKey(oldKey).

function incrementKey(str) {
  var res = Number(str.substring(2, 5)) + 1;
      res = "000" + String(res);
      res = "RQ" + res.substring(res.length - 3, res.length);
      return res;
}