美文网首页
微信小程序 - excel中的日期处理

微信小程序 - excel中的日期处理

作者: 西半球_ | 来源:发表于2020-08-08 11:41 被阅读0次

    在使用云函数导入excel时发现excel中的时间是44044.7673611111,需要处理之后才可以正常使用,实际使用中以下方法 在云函数和小程序中调用时间差了8个小时,需按需调用,

    excel文件导入请看 微信小程序 - excel通过云函数导入云数据库

    /* excel 时间转换 
       * num 44044.7673611111(2020/8/1 18:25:00)
       * return  2020/08/01 18:25:00
       */
      Jh_excelDateToYMDHMS(num) {
        var utc_days = Math.floor(num - 25569);
        var utc_value = utc_days * 86400;
        var date_info = new Date(utc_value * 1000);
        var fractional_day = num - Math.floor(num) + 0.0000001;
        var total_seconds = Math.floor(86400 * fractional_day);
        var seconds = total_seconds % 60;
        total_seconds -= seconds;
        var hours = Math.floor(total_seconds / (60 * 60));
        var minutes = Math.floor(total_seconds / 60) % 60;
        //中国标准时间
        var time = new Date(date_info.getFullYear(), date_info.getMonth(), date_info.getDate(), hours, minutes, seconds);
        // console.log(time); Sat Aug 01 2020 18:25:00 GMT+0800 (中国标准时间)
        // return time
        var dateStr = new Date(time).toJSON();
        //小程序调用
        var date = new Date(+new Date(dateStr) + 8 * 3600 * 1000).toISOString().replace(/T/g, ' ').replace(/\.[\d]{3}Z/, '')
        // //云函数调用
        // var date = new Date(+new Date(dateStr)).toISOString().replace(/T/g, ' ').replace(/\.[\d]{3}Z/, '')
        var newTime = date.replace(/-/g, '/');
        return newTime
      },
    

    调用

        //2020/8/1 18:25:00
        var num = 44044.7673611111
    
        var time7 = this.Jh_excelDateToYMDHMS(num)
        console.log(time7);
       //输出
        2020/08/01 18:25:00
    

    相关文章

      网友评论

          本文标题:微信小程序 - excel中的日期处理

          本文链接:https://www.haomeiwen.com/subject/swoirktx.html