zoukankan      html  css  js  c++  java
  • JSON日期时间格式化

    使用 JavaScriptSerializer 序列化生成 Json 字符串时,DateTime 会被转成形如 /Date(1369377245460)/ 的格式。

    以下函数用于格式化输出时间,使用方法类似于C# 的 Datetime.ToString

    //日期格式转换
    function formatDate(str, format) {
        if (!str) return '';
    
        var i = parseInt(str.match(/[-]*\d+/g)[0]);
        if (i < 0) return '';
        var d = new Date(i);
        if (d.toString() == 'Invalid Date') return '';
    
        //处理客户端时区不同导致的问题
        //480 是UTC+8
        var utc8Offset = 480;
        d.setMinutes(d.getMinutes() + (d.getTimezoneOffset() + 480));
    
        format = format || 'MM/dd hh:mm:ss tt';
    
        var hour = d.getHours();
        var month = FormatNum(d.getMonth() + 1)
    
        var re = format.replace('YYYY', d.getFullYear())
        .replace('YY', FormatNum(d.getFullYear() % 100))
        .replace('MM', FormatNum(month))
        .replace('dd', FormatNum(d.getDate()))
        .replace('hh', hour == 0 ? '12' : FormatNum(hour <= 12 ? hour : hour - 12))
        .replace('HH', FormatNum(hour))
        .replace('mm', FormatNum(d.getMinutes()))
        .replace('ss', FormatNum(d.getSeconds()))
        .replace('tt', (hour < 12 ? 'AM' : 'PM'));
    
        return re;
    
        function FormatNum(num) {
            num = Number(num);
            return num < 10 ? ('0' + num) : num.toString();
        }
    }
    console.log(formatDate('/Date(1369377245460)/', 'dd/MM HH:mm:ss'));
  • 相关阅读:
    LVM(逻辑卷管理器)部署、扩容、缩小
    部署磁盘阵列
    docker安装
    Linux基础命令
    awk补充
    awk
    shell脚本--grep与正则表达式
    文本处理工具 -wc、cut、sort、uniq的用法及参数
    Shell脚本编程原理
    重定向与管道符
  • 原文地址:https://www.cnblogs.com/straybird/p/3096868.html
Copyright © 2011-2022 走看看