Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/413.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Google应用程序脚本-如何在不定义对象的情况下使用方法_Javascript_Google Apps Script_Google Sheets - Fatal编程技术网

Javascript Google应用程序脚本-如何在不定义对象的情况下使用方法

Javascript Google应用程序脚本-如何在不定义对象的情况下使用方法,javascript,google-apps-script,google-sheets,Javascript,Google Apps Script,Google Sheets,我正在以(###:###.#####)的格式(ex 12:43.76)在一个有很多持续时间的电子表格后面编写脚本。我需要编写一些代码,将其转换为秒。我写了相反的代码,把秒转换成这种格式。但是,在为此编写自定义公式时,.split方法不起作用 function MTOS(input){ String(input); if (typeof(input) != "string") { Logger.log("Not a string")} var array = input.spl

我正在以(###:###.#####)的格式(ex 12:43.76)在一个有很多持续时间的电子表格后面编写脚本。我需要编写一些代码,将其转换为秒。我写了相反的代码,把秒转换成这种格式。但是,在为此编写自定义公式时,.split方法不起作用

function MTOS(input){
  String(input);
  if (typeof(input) != "string") {
    Logger.log("Not a string")}
  var array = input.split(":");
  Logger.log('The original string is: "' + input + '"');
var min = Number(array[0]);
var sec = Number(array[1]);
  Logger.log("min=" + min);
  Logger.log("sec=" + sec);
var MIN = min*60;
  Logger.log(MIN);
var ex = MIN+sec;
  Logger.log(ex);
return ex;
}
这是我在脚本编辑器中的内容。输入是我在表格中写入公式时电子表格中的参数(ex-=MTOS(3:23.53))。当我在脚本编辑器中运行该函数时,它给出错误“TypeError:Cannotcallmethod”split of undefined.(第5行,file“MTOS”)”,在工作表中,它返回“error:Result was not a number”。我理解发生这种情况是因为函数本身没有定义输入,所以.split无法工作。但是,我还能如何编写图纸的自定义公式呢


多谢各位

这似乎对我有效:(也许我误解了这个问题)


复制单元格并对其应用数字/常规格式,而不是使用自定义公式。是否没有办法修复我已经存在的问题?格式化是我唯一的选择?这对我来说似乎是可行的,如果我在函数中将输入定义为一个随机数,它就会起作用(ex-input=“1:24.65”)。但是当我write=MTOS(somenumber)时,它返回一个空白单元格,其中没有任何内容,也没有错误消息。我假设输入是一个格式为“###:###”的字符串
function MTOS(input){
  var iA = input.split(":");
  var min = Number(iA[0]);
  var sec = Number(iA[1]);
  Logger.log('Seconds=%s',min * 60 + sec);
}