日期对象未定义

时间:2018-11-27 20:06:42

标签: javascript datetime google-apps-script

function calcHoras(time1, time2, time3, time4)      
{

var time1;
var time2; 
var time3;
var time4;
Logger.log(time1);
var time = time2- time1;
Logger.log(time); 
  return converteTime(time) 

}

function converteTime(time) {
    var minutos = parseInt((time/(1000*60))%60)
      , horas = parseInt((time/(1000*60*60))%24);


    return horas + ":" + minutos;
}

-//-

我需要变量time1,time2,time3和time4的值来执行条件结构(if,while,for),但是在脚本中它仅返回:

  

[18-11-27 12:01:58:601 PST]未定义
  [18-11-27 12:01:58:601 PST] NaN

time1,time2,time3和time3是日期类型的对象;

对于工作表的单元格,正确的值以小时和分钟返回;

我需要做的一个例子:

if (time1! = 0 && time2! = 0) {
        var time = time2 - time1;
} else {
        var time = time4 - time1;
   }

2 个答案:

答案 0 :(得分:1)

发生此问题是因为calcHoras将未定义的值分配给time1,time2,time3和time4。为避免这种情况,请删除以下代码行

var time1;
var time2; 
var time3;
var time4;

答案 1 :(得分:0)

鲁本

我删除了指示的行,但是日志(变量的内容)始终返回相同的值:

[18-11-28 07: 18: 44: 44 BRST] undefined
[18-11-28 07: 18: 44: 101 BRST] NaN

将测试实例化为对象日期时,日志中返回的值也是:

var test = new Date (time1).getHours();
Logger.log (test);

[18-11-28 07: 41: 54: 629 BRST] NaN