zoukankan      html  css  js  c++  java
  • JSON.stringify时间的问题

    使用Element UI控件el-date-picker后台传值用到JSON.stringify转换字符串传后台发现输出国际标准时间(ISO),减少了8个小时,

    解决方式:

         由于JSON.stringify解析Date是调用了Date对象的prototype的toJSON方法,所以我们重写它就可以了,如下:

     1 Date.prototype.format = function(fmt) {
     2     var o = {
     3         "M+" : this.getMonth()+1,                 //月份 
     4         "d+" : this.getDate(),                    //
     5         "h+" : this.getHours(),                   //小时 
     6         "m+" : this.getMinutes(),                 //
     7         "s+" : this.getSeconds(),                 //
     8         "q+" : Math.floor((this.getMonth()+3)/3), //季度 
     9         "S"  : this.getMilliseconds()             //毫秒 
    10     };
    11     if(/(y+)/.test(fmt)) {
    12         fmt=fmt.replace(RegExp.$1, (this.getFullYear()+"").substr(4 - RegExp.$1.length));
    13     }
    14     for(var k in o) {
    15         if(new RegExp("("+ k +")").test(fmt)){
    16             fmt = fmt.replace(RegExp.$1, (RegExp.$1.length==1) ? (o[k]) : (("00"+ o[k]).substr((""+ o[k]).length)));
    17         }
    18     }
    19     return fmt;
    20 }
    21 /* 
    22  * 重写时间的toJSON方法,因为在调用JSON.stringify的时候,时间转换就调用的toJSON,这样会导致少8个小时,所以重写它的toJSON方法
    23  */
    24 Date.prototype.toJSON = function () {
    25     return this.format("yyyy-MM-dd hh:mm:ss"); // util.formatDate是自定义的个时间格式化函数
    26 }
  • 相关阅读:
    Redis 集群搭建详细指南
    java 获取properties的几种方式
    redis主从,哨兵集群
    Nginx服务器之负载均衡策略
    Redis中常用命令
    Java中使用Jedis操作Redis
    redis学习教程网站
    Redis 数据备份与恢复
    CentOS6.5 在线安装Redis5.0.9
    nginx中文学习网站(推荐)
  • 原文地址:https://www.cnblogs.com/wanglu/p/7505020.html
Copyright © 2011-2022 走看看