zoukankan      html  css  js  c++  java
  • javascript格式化日期

      将String类型解析为Date类型.

      parseDate('2006-1-1') return new Date(2006,0,1)

      parseDate(' 2006-1-1 ') return new Date(2006,0,1)

      parseDate('2006-1-1 15:14:16') return new Date(2006,0,1,15,14,16)

      parseDate(' 2006-1-1 15:14:16 ') return new Date(2006,0,1,15,14,16);

      parseDate('2006-1-1 15:14:16.254') return new Date(2006,0,1,15,14,16,254)

      parseDate(' 2006-1-1 15:14:16.254 ') return new Date(2006,0,1,15,14,16,254)

      parseDate('不正确的格式') retrun null

    */

    function parseDate(str){  

    if(typeof str == 'string'){  

    var results = str.match(/^ *(\d{4})-(\d{1,2})-(\d{1,2}) *$/);  

    if(results && results.length>3)  

    return new Date(parseInt(results[1]),parseInt(results[2]) -1,parseInt(results[3]));   

        results = str.match(/^ *(\d{4})-(\d{1,2})-(\d{1,2}) +(\d{1,2}):(\d{1,2}):(\d{1,2}) *$/);  

    if(results && results.length>6)  

    return new Date(parseInt(results[1]),parseInt(results[2]) -1,parseInt(results[3]),parseInt(results[4]),parseInt(results[5]),parseInt(results[6]));   

        results = str.match(/^ *(\d{4})-(\d{1,2})-(\d{1,2}) +(\d{1,2}):(\d{1,2}):(\d{1,2})\.(\d{1,9}) *$/);  

    if(results && results.length>7)  

    return new Date(parseInt(results[1]),parseInt(results[2]) -1,parseInt(results[3]),parseInt(results[4]),parseInt(results[5]),parseInt(results[6]),parseInt(results[7]));   

      }  

    return null;  

    }  

    /*

      将Date/String类型,解析为String类型.

      传入String类型,则先解析为Date类型

      不正确的Date,返回 ''

      如果时间部分为0,则忽略,只返回日期部分.

    */

    function formatDate(v){  

    if(typeof v == 'string') v = parseDate(v);  

    if(v instanceof Date){  

    var y = v.getFullYear();  

    var m = v.getMonth() + 1;  

    var d = v.getDate();  

    var h = v.getHours();  

    var i = v.getMinutes();  

    var s = v.getSeconds();  

    var ms = v.getMilliseconds();     

    if(ms>0) return y + '-' + m + '-' + d + ' ' + h + ':' + i + ':' + s + '.' + ms;  

    if(h>0 || i>0 || s>0) return y + '-' + m + '-' + d + ' ' + h + ':' + i + ':' + s;  

    return y + '-' + m + '-' + d;  

      }  

    return '';  

    From: http://gwbasic.javaeye.com/blog/36904

    =============================

     

    程序代码

    <SCRIPT LANGUAGE="JavaScript">
    <!--
        Date.prototype.format = function(format)  
    {  
       var o = {  
         "M+" : this.getMonth()+1, //month  
         "d+" : this.getDate(),    //day  
         "h+" : this.getHours(),   //hour  
         "m+" : this.getMinutes(), //minute  
         "s+" : this.getSeconds(), //second  
         "q+" : Math.floor((this.getMonth()+3)/3), //quarter  
         "S" : this.getMilliseconds() //millisecond  
       }  
       if(/(y+)/.test(format)) format=format.replace(RegExp.$1,  
         (this.getFullYear()+"").substr(4 - RegExp.$1.length));  
       for(var k in o)if(new RegExp("("+ k +")").test(format))  
         format = format.replace(RegExp.$1,  
           RegExp.$1.length==1 ? o[k] :   
             ("00"+ o[k]).substr((""+ o[k]).length));  
       return format;  
    }
    function rain()
    {
    obj1 = new Date().format("yyyy-MM-dd hh:mm:ss");
    obj2 = new Date().format("yyyy-MM-dd");
    obj3 = new Date().format("yyyy/MM/dd");
    obj4 = new Date().format("MM/dd/yyyy");
    alert("obj1="+obj1+ "/n  obj2="+obj2 +  "/n  obj3="  +obj3+  "/n  obj4="  +obj4);
    }
    //-->
    </SCRIPT>

    From: http://www.jacken.com.cn/Web-Design/Javascript/2009-03-11/Javascript_Article_28024.html

    =============================

  • 相关阅读:
    使用Razor视图引擎来生成邮件内容
    Asp .Net Core 2.0 登录授权以及多用户登录
    简单几步,提升.Net Core的开发效率
    百万数据测试 Entity Framework 到底有多慢
    纸壳CMS(ZKEACMS)体验升级,快速创建页面,直接在页面中修改内容
    ZKEACMS 配置使用 HTTPS
    使用 jQuery.Pin 垂直滚动时固定导航
    底层的增删查改
    关于hangfire的使用
    巧用 CSS 实现酷炫的充电动画
  • 原文地址:https://www.cnblogs.com/emanlee/p/1429668.html
Copyright © 2011-2022 走看看