<!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. 紫书 例题8-7 UVa 11572(滑动窗口)

    滑动窗口这个方法名字非常形象, 先是窗口的右指针尽量往右滑, 滑不动了就滑窗口的左指针, 滑到右指针又可以开始滑动为止. 这道题是要记录滑的过程中最大的窗口长度, 限制条件是窗口中不能出现重复的值. ...

  2. BNUOJ 36005 Chemical Reaction

    Chemical Reaction Time Limit: 3000ms Memory Limit: 65536KB This problem will be judged on OpenJudge. ...

  3. SLF4j 和 common-logging

    http://blog.csdn.net/xydds/article/details/51606010

  4. POJ——T 3687 Labeling Balls

    http://poj.org/problem?id=3687 Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 14842   ...

  5. 局部加权回归、欠拟合、过拟合 - Andrew Ng机器学习公开课笔记1.3

    本文主要解说局部加权(线性)回归.在解说局部加权线性回归之前,先解说两个概念:欠拟合.过拟合.由此引出局部加权线性回归算法. 欠拟合.过拟合 例如以下图中三个拟合模型.第一个是一个线性模型.对训练数据 ...

  6. unix中文件I/O

    在unix中可用的文件I/O函数包含打开文件,读文件,写文件等. Unix系统中的大多数文件I/O须要用到5个函数:open,read,write,lseek,close. 这里要说明的是read,w ...

  7. Mysql写出高质量的sql语句的几点建议

    CleverCode在实际的工作也写过一些低效率的sql语句.这些语句会给数据库带来非常大的压力.最基本的表现就是sql语句执行慢,后来逐渐的去优化和尝试. 总结了一些高质量的sql语句的写法.这里C ...

  8. C++友元(Friend)简介

    相对Java而言,友元是C++中特有的一种元素,再加上<C++ Primer>也并没有太具体的样例,所以刚接触这个概念的时候懵了非常久,即是自己总结一下,也希望能帮到大家,以下来讲讲友元的 ...

  9. LSTM 时间序列数据的异常检测

    见 http://www.infoq.com/cn/articles/deep-learning-time-series-anomaly-detection 但是不够详细

  10. ARM嵌入式复习

    第一章 1.嵌入式系统 “以应用为中心,以计算机技术为基础,软硬件可裁剪,适用于应用系统对功能,可靠性,成本,体积,功耗要求严格的专用计算机系统” 根据应用的要求,沿着“体积小,低功耗,高可靠”方向发 ...