m0_46075468 2023-06-27 15:07 采纳率: 89.3%
浏览 29

kettle里面运行这段代码变量all1没有值,但是在浏览器里面打印是有值的

kettle里面运行这段代码变量all1没有值,但是在浏览器里面打印是有值的,请问是什么原因

    var myDate = new Date();
        var cyear = myDate.getFullYear();
        var cmonth = myDate.getMonth();
        var cday = myDate.getDate();
        var hours = myDate.getHours(); //获取当前小时
        var minutes = myDate.getMinutes(); //获取当前分钟
        var seconds = myDate.getSeconds();
        var startDate, endDate;
        var cut;
        var space = 5;
        var all = '[{';
        cmonth = cmonth + 1;
        if (cmonth < 10) {
            cmonth = '0' + cmonth;
        }
        if (cday < 10) {
            cday = '0' + cday;
        }
        var created = cyear + '-' + cmonth + '-' + cday;
        var shift = 'Y';
        if (shift == 'B') {//白班
            startDate = created + ' 08:30';
            endDate = created + ' 20:30';
        } else if (shift == 'Y') {//夜班
            cday = myDate.getDate() - 1;
            created1 = cyear + '-' + cmonth + '-' + cday;
            startDate = created1 + ' 20:30';
            endDate = created + ' 08:30';
      
        }
        var aa = new Date(startDate);
        var bb = new Date(endDate);
        var c = 5;
  
            space = space * 60 * 1000;
            var endTime = bb.getTime();
            var startTime = aa.getTime();
            var mod = endTime - startTime;
            
            var Start1 = '2023-06-26 22:00:00';
            var End1 = '2023-06-26 22:10:00';
            var Start2 = '2023-06-26 23:30:00';
            var End2 = '2023-06-26 24:00:00';
            var Start3 = '2023-06-27 03:00:00';
            var End3 = '2023-06-27 03:10:00';
            var Start4 = '2023-06-27 05:10:00';
            var End4 = '2023-06-27 08:30:00';
          
            console.log(mod);
            console.log(space);
            while (mod >= space) {//不足五分钟
                var d = new Date();
   
                d.setTime(startTime + space);
          
                var kun = 'date_now';
                all = all + kun + ":" + "'" + d + "'" + ',';
        
                var formatDate1 = new Date(d);
                var formatDate2 = new Date(Start1);
                var formatDate3 = new Date(End1);
                var formatDate4 = new Date(Start2);
                var formatDate5 = new Date(End2);
                var formatDate6 = new Date(Start3);
                var formatDate7 = new Date(End3);
                var formatDate8 = new Date(Start4);
                var formatDate9 = new Date(End4);
                if (formatDate1 >= formatDate2 && formatDate1 <= formatDate3) {//大于Start1小于End1
                    d = Start1;
                }
                if (formatDate1 > formatDate3 && formatDate1 < formatDate4) {
                    cut = d.getTime() - (formatDate3.getTime() - formatDate2.getTime());//大于End1小于Start2
                    d.setTime(cut);
                }
                if (formatDate1 >= formatDate4 && formatDate1 <= formatDate5) {//大于Start2小于End2
                    cut = formatDate4.getTime() - (formatDate3.getTime() - formatDate2.getTime())//getTime()不能直接作用于字符串对象 //
                    d.setTime(cut);
                }
                if (formatDate1 > formatDate5 && formatDate1 < formatDate6) {//大于End2小于Start3
                    cut = d.getTime() - (formatDate3.getTime() - formatDate2.getTime()) - (formatDate5.getTime() - formatDate4.getTime());
                    d.setTime(cut);
                }
                if (formatDate1 >= formatDate6 && formatDate1 <= formatDate7) {//大于Start3小于End3
                    cut = formatDate6.getTime() - (formatDate3.getTime() - formatDate2.getTime()) - (formatDate5.getTime() - formatDate4.getTime());
                    d.setTime(cut);
                }
                if (formatDate1 > formatDate7 && formatDate1 < formatDate8) {//大于End3小于Start4
                    cut = d.getTime() - (formatDate3.getTime() - formatDate2.getTime()) - (formatDate5.getTime() - formatDate4.getTime()) - (formatDate7.getTime() - formatDate6.getTime());
                    d.setTime(cut);
                }
                if (formatDate1 >= formatDate8 && formatDate1 <= formatDate9) {//大于Start4小于End4
                    cut = formatDate8.getTime() - (formatDate3.getTime() - formatDate2.getTime()) - (formatDate5.getTime() - formatDate4.getTime()) - (formatDate7.getTime() - formatDate6.getTime());
                    d.setTime(cut);
                }
                var startDate1 = new Date(startDate);
                var stopDate = new Date(d);

                var startTime1 = startDate1.getTime();
                var stopTime = stopDate.getTime();
                var cTime = Number(stopTime) - Number(startTime1);
                var secondTime = cTime / 1000 / 60;//时间差
              
                kun = 'secondTime';
                all = all + kun + ":" + "'" + secondTime + "'" + ',';
                var O_SUM1 = 10;
                var number = 5;
                if (shift == 'Y') {
                    number = O_SUM1 - number;
                    
                    kun = 'number';
                    all = all + kun + ":" + "'" + number + "'" ;
                }

                mod = mod - space;
                startTime = startTime + space;
                all = all + '},';
            }
            all = all.substring(0, all.length - 1);
            all = all + ']';
            var all1 = all
        

  • 写回答

2条回答 默认 最新

  • MarkHan_ 2023-06-27 15:38
    关注
    var myDate = new Date();
    var cyear = myDate.getFullYear();
    var cmonth = myDate.getMonth();
    var cday = myDate.getDate();
    var hours = myDate.getHours();
    var minutes = myDate.getMinutes();
    var seconds = myDate.getSeconds();
    var startDate, endDate;
    var cut;
    var space = 5;
    var all = '[{';
    cmonth = cmonth + 1;
    if (cmonth < 10) {
        cmonth = '0' + cmonth;
    }
    if (cday < 10) {
        cday = '0' + cday;
    }
    var created = cyear + '-' + cmonth + '-' + cday;
    var shift = 'Y';
    if (shift == 'B') {
        startDate = created + ' 08:30';
        endDate = created + ' 20:30';
    } else if (shift == 'Y') {
        cday = myDate.getDate() - 1;
        created1 = cyear + '-' + cmonth + '-' + cday;
        startDate = created1 + ' 20:30';
        endDate = created + ' 08:30';
    }
    
    // Rest of your code...
    
    var all1 = all;
    
    评论

报告相同问题?

问题事件

  • 创建了问题 6月27日

悬赏问题

  • ¥15 Python如何在已有绘图中添加地图底图
  • ¥15 用js遍历数据并对非空元素添加css样式
  • ¥15 使用autodl云训练,希望有直接运行的代码(关键词-数据集)
  • ¥50 python写segy数据出错
  • ¥20 关于线性结构的问题:希望能从头到尾完整地帮我改一下,困扰我很久了
  • ¥30 3D多模态医疗数据集-视觉问答
  • ¥20 设计一个二极管稳压值检测电路
  • ¥15 内网办公电脑进行向日葵
  • ¥15 如何输入双曲线的参数a然后画出双曲线?我输入处理函数加上后就没有用了,不知道怎么回事去掉后双曲线可以画出来
  • ¥15 soildworks装配体的尺寸问题