<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
</head>
<body>
	<script>
        // formatDate
		var formatDate = function (date) {
		    var y = date.getFullYear();
		    var m = date.getMonth() + 1;
		    m = m < 10 ? '0' + m : m;
		    var d = date.getDate();
		    d = d < 10 ? ('0' + d) : d;
		    return y + '-' + m + '-' + d;
		};
        // console.log(formatDate(new Date()))

        // formatDateTime
		var formatDateTime = function (date) {
		    var y = date.getFullYear();
		    var m = date.getMonth() + 1;
		    m = m < 10 ? ('0' + m) : m;
		    var d = date.getDate();
		    d = d < 10 ? ('0' + d) : d;
		    var h = date.getHours();
		    var minute = date.getMinutes();
		    minute = minute < 10 ? ('0' + minute) : minute;
		    return y + '-' + m + '-' + d+' '+h+':'+minute;
		};
		// console.log(formatDateTime(new Date()))

        //parserDate
		var parserDate = function (date) {
		    var t = Date.parse(date);
		    if (!isNaN(t)) {
		        return new Date(Date.parse(date.replace(/-/g, "/")));
		    } else {
		        return new Date();
		    }
		};
        // console.log(parserDate("2015-03-19 12::00:00"))

        //DateParse    //2014-07-10 10:21:12的时间戳为:1404958872
        var Dateparse  = function(stringTime){
           var timestamp = Date.parse(new Date(stringTime));
           timestamp = timestamp/1000;
           return timestamp;
        }
        // console.log(Dateparse("2014-07-10 10:21:12"))

        // 将当前时间换成时间格式字符串  1404958872转为2014-07-10 10:21:12
        var formatParse = function(secs){
        	var newDate = new Date(secs);
        	Date.prototype.format = function(format) {
        	       var date = {
        	              "M+": this.getMonth() + 1,
        	              "d+": this.getDate(),
        	              "h+": this.getHours(),
        	              "m+": this.getMinutes(),
        	              "s+": this.getSeconds(),
        	              "q+": Math.floor((this.getMonth() + 3) / 3),
        	              "S+": this.getMilliseconds()
        	       };
        	       if (/(y+)/i.test(format)) {
        	              format = format.replace(RegExp.$1, (this.getFullYear() + '').substr(4 - RegExp.$1.length));
        	       }
        	       for (var k in date) {
        	              if (new RegExp("(" + k + ")").test(format)) {
        	                     format = format.replace(RegExp.$1, RegExp.$1.length == 1
        	                            ? date[k] : ("00" + date[k]).substr(("" + date[k]).length));
        	              }
        	       }
        	       return format;
        	}
        	//格式可以修改(yyyy/MM/dd h:m:s)
        	return newDate.format('yyyy-MM-dd h:m:s');
        }
        // console.log(formatParse(1324234234234))

       //日期格式化函数
        Date.prototype.toString=function(format,loc){
            var time={};
            time.Year=this.getFullYear();
            time.TYear=(""+time.Year).substr(2);
            time.Month=this.getMonth()+1;
            time.TMonth=time.Month<10?"0"+time.Month:time.Month;
            time.Day=this.getDate();
            time.TDay=time.Day<10?"0"+time.Day:time.Day;
            time.Hour=this.getHours();
            time.THour=time.Hour<10?"0"+time.Hour:time.Hour;
            time.hour=time.Hour<13?time.Hour:time.Hour-12;
            time.Thour=time.hour<10?"0"+time.hour:time.hour;
            time.Minute=this.getMinutes();
            time.TMinute=time.Minute<10?"0"+time.Minute:time.Minute;
            time.Second=this.getSeconds();
            time.TSecond=time.Second<10?"0"+time.Second:time.Second;
            time.Millisecond=this.getMilliseconds();
            time.Week=this.getDay();

            var MMMArrEn=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];
            var MMMArr=["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"];
            var WeekArrEn=["Sun","Mon","Tue","Web","Thu","Fri","Sat"];
            var WeekArr=["星期日","星期一","星期二","星期三","星期四","星期五","星期六"];

            var oNumber=time.Millisecond/1000;

            if(format!=undefined && format.replace(/\s/g,"").length>0){
                if(loc!=undefined && loc =="en"){
                    MMMArr=MMMArrEn.slice(0);
                    WeekArr=WeekArrEn.slice(0);
                }
                format=format
                    .replace(/yyyy/ig,time.Year)
                    .replace(/yyy/ig,time.Year)
                    .replace(/yy/ig,time.TYear)
                    .replace(/y/ig,time.TYear)
                    .replace(/MMM/g,MMMArr[time.Month-1])
                    .replace(/MM/g,time.TMonth)
                    .replace(/M/g,time.Month)
                    .replace(/dd/ig,time.TDay)
                    .replace(/d/ig,time.Day)
                    .replace(/HH/g,time.THour)
                    .replace(/H/g,time.Hour)
                    .replace(/hh/g,time.Thour)
                    .replace(/h/g,time.hour)
                    .replace(/mm/g,time.TMinute)
                    .replace(/m/g,time.Minute)
                    .replace(/ss/ig,time.TSecond)
                    .replace(/s/ig,time.Second)
                    .replace(/fff/ig,time.Millisecond)
                    .replace(/ff/ig,oNumber.toFixed(2)*100)
                    .replace(/f/ig,oNumber.toFixed(1)*10)
                    .replace(/EEE/g,WeekArr[time.Week]);
            }
            else{
                format=time.Year+"-"+time.Month+"-"+time.Day+" "+time.Hour+":"+time.Minute+":"+time.Second;
            }
            return format;
        }

        // 这里可以不传参数
        var d=new Date(4324324234234);
        console.log(d.toString());    //2014-7-27 9:26:52
        console.log(d.toString(""));    //2014-7-27 9:26:52
        console.log(d.toString("yyyy-MM-dd HH:mm:ss"));    //2014-07-27 09:26:52
        console.log(d.toString("yyyy年MM月dd日 HH:mm:ss"));    //2014年07月27日 09:26:52
        console.log(d.toString("yyyy-MM-dd HH:mm:ss fff"));    //2014-07-27 09:26:52 237
        console.log(d.toString("yyyy年 MMM dd EEE"));    //2014年 七月 27 星期五
        console.log(d.toString("yyyy MMM dd EEE","en"));    //2014 Jul 27 Fri
	</script>
</body>
</html>

  

分享一段官date函数用法的更多相关文章

  1. 分享:Oracle 系统变量函数用法说明

    在Oracle数据库中,Oracle系统变量函数是经常会使用到的函数,分享下Oracle系统变量函数的用法. Oracle函数多种多样,系统变量函数就是其中之一,介绍三种最常见的系统变量函数. Ora ...

  2. MySQL Date函数的正确用法

    以下的文章主要介绍的是MySQL Date函数的实际应用其中包括如何获取当前时间的具体操作,Unix时间的具体应用,时间前后.时间间隔与时间转换的实际内容描述,以下就是文章的主要内容. MySQL D ...

  3. jquery中attr()与prop()函数用法实例详解(附用法区别)

    本文实例讲述了jQuery中attr()与prop()函数用法.分享给大家供大家参考,具体如下: 一.jQuery的attr()方法 jquery中用attr()方法来获取和设置元素属性,attr是a ...

  4. thinkPHP内置字符串截取msubstr函数用法详解

    作者:陈达辉 字体:[增加 减小] 类型:转载 时间:2016-11-15 我要评论 这篇文章主要介绍了thinkPHP内置字符串截取函数用法,结合实例形式分析了thinkPHP内置的字符串截取函数功 ...

  5. python开发笔记之zip()函数用法详解

    今天分享一篇关于python下的zip()函数用法. zip()是Python的一个内建函数,它接受一系列可迭代的对象作为参数,将对象中对应的元素按顺序组合成一个tuple,每个tuple中包含的是原 ...

  6. ARRAY_MAP函数用法

    ARRAY_MAP函数用法 Posted on 2012-9-18, 22:15, by tmser, under php 总结 . 看php JSON 类中有这样一种用法array_map(arra ...

  7. Oracle 中 decode 函数用法

    Oracle 中 decode 函数用法 含义解释:decode(条件,值1,返回值1,值2,返回值2,...值n,返回值n,缺省值) 该函数的含义如下:IF 条件=值1 THEN RETURN(翻译 ...

  8. 【夯实PHP基础】PHP的date函数

    本文地址 原文地址 提纲: 1. 引言 2. 代码示例 3. 参考资料 1. 引言 今天看到一段代码 $timeNew = date('n月j日', strtotime($oldTime)); 感觉有 ...

  9. Python回调函数用法实例详解

    本文实例讲述了Python回调函数用法.分享给大家供大家参考.具体分析如下: 一.百度百科上对回调函数的解释: 回调函数就是一个通过函数指针调用的函数.如果你把函数的指针(地址)作为参数传递给另一个函 ...

随机推荐

  1. Noip-pj2018游记

    2019/1/3 搬运于我的luogu博客 2018/10/9 没有去试机,在学校搞文化课去了.准考证是让学校的信息课老师帮我拿的 回家后随手A了P1198 P3870 P2846 P1531 感觉真 ...

  2. 素数计数函数$\pi(x)\sim \Theta(\frac{x}{\log{x}})$的一个初等方法——素数定理的估计

    $\DeclareMathOperator{\lcm}{lcm}$ 本文的方法来源于GTM 190:"Problems in Algebraic Number Theory",给出 ...

  3. python 中进制转换及format(),int()函数用法

    python中数值型变量好像只能是十进制形式表示,其他类型变量只能以字符串形式存在,可以通过format函数将int类型变量转换成其他进制字符串,如下所示: v_code=15 # 2进制 x=for ...

  4. Node.js使用cnpm

    npm是Node.js中维护第三方库.模块的工具,可是国外的速度非常悲剧,这里有一个中国的源cnpm. http://cnpmjs.org/ 须要在命令行中执行 npm install -g cnpm ...

  5. google在线測试练习题3

    Problem The Latin alphabet contains 26 characters and telephones only have ten digits on the keypad. ...

  6. Canvas中的非零围绕规则原理

    非零围绕规则:对于路径中指定范围区域,从该区域内部画一条足够长的线段.使此线段的全然落在路径范围之外. 非零围绕规则计数器:然后,将计数器初始化为0,每当这个线段与路径上的直线或曲线相交时,就改变计数 ...

  7. 【试水CAS-4.0.3】第02节_CAS服务端登录页个性化

    完整版见https://jadyer.github.io/2015/07/16/sso-cas-login-diy/ /** * @see ------------------------------ ...

  8. 自己封装js组件 - 中级中高级

    接着做关于alert组件的笔记 怎么又出来个中高级呢 对没错 就是出一个中高级来刷流量呵呵呵,但是中高级也不是白叫的 这次主要是增加了widget类,增加了自己绑定的事件和触发事件的方法!这么做是为什 ...

  9. Java 深拷贝和浅拷贝 利用序列化实现深拷贝

    Java 深拷贝和浅拷贝 转自:http://www.cnblogs.com/mengdd/archive/2013/02/20/2917971.html 深拷贝(deep clone)与浅拷贝(sh ...

  10. 搭建Hadoop的全分布模式

    此教程仅供参考 注意:此文档目的是为了本人方便以后复习,不适合当教程,以免误导萌新... 1.安装三台Linux2.在每台机器上安装JDK3.配置每台机器的免密码登录 (*) 生成每台机器的公钥和私钥 ...