javascript强大的日期函数代码分享


Posted in Javascript onSeptember 04, 2013
var date = function( a, s ) {
    var d = s ? new Date( s ) : new Date(), f = d.getTime();
    return ( '' + a ).replace( /a|A|d|D|F|g|G|h|H|i|I|j|l|L|m|M|n|s|S|t|T|U|w|y|Y|z|Z/g, function ( a ) {
        switch ( a ) {
                case 'a' : return d.getHours() > 11 ? 'pm' : 'am';
                case 'A' : return d.getHours() > 11 ? 'PM' : 'AM';
                case 'd' : return ( '0' + d.getDate() ).slice(-2);
                case 'D' : return [ 'Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat' ][ d.getDay() ];
                case 'F' : return [ 'January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December' ][ d.getMonth() ];
                case 'g' : return ( s = ( d.getHours() || 12 ) ) > 12 ? s - 12 : s;
                case 'G' : return d.getHours();
                case 'h' : return ( '0' + ( ( s = d.getHours() || 12 ) > 12 ? s - 12 : s ) ).slice(-2);
                case 'H' : return ( '0' + d.getHours() ).slice(-2);
                case 'i' : return ( '0' + d.getMinutes() ).slice(-2);
                case 'I' : return (function(){ d.setDate(1); d.setMonth(0); s = [ d.getTimezoneOffset() ]; d.setMonth(6); s[1] = d.getTimezoneOffset(); d.setTime( f ); return s[0] == s[1] ? 0 : 1; })();
                case 'j' : return d.getDate();
                case 'l' : return [ 'Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday' ][ d.getDay() ];
                case 'L' : return ( s = d.getFullYear() ) % 4 == 0 && ( s % 100 != 0 || s % 400 == 0 ) ? 1 : 0;
                case 'm' : return ( '0' + ( d.getMonth() + 1 ) ).slice(-2);
                case 'M' : return [ 'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec' ][ d.getMonth() ];
                case 'n' : return d.getMonth() + 1;
                case 's' : return ( '0' + d.getSeconds() ).slice(-2);
                case 'S' : return [ 'th', 'st', 'nd', 'rd' ][ ( s = d.getDate() ) < 4 ? s : 0 ];
                case 't' : return (function(){ d.setDate(32); s = 32 - d.getDate(); d.setTime( f ); return s; })();
                case 'T' : return 'UTC';
                case 'U' : return ( '' + f ).slice( 0, -3 );
                case 'w' : return d.getDay();
                case 'y' : return ( '' + d.getFullYear() ).slice(-2);
                case 'Y' : return d.getFullYear();
                case 'z' : return (function(){ d.setMonth(0); return d.setTime( f - d.setDate(1) ) / 86400000; })();
                default : return -d.getTimezoneOffset() * 60;
            };
    } );
};
Javascript 相关文章推荐
Javascript 自定义类型方法小结
Mar 02 Javascript
javascript数字数组去重复项的实现代码
Dec 30 Javascript
从零开始学习Node.js系列教程之设置HTTP头的方法示例
Apr 13 Javascript
JavaScript实现HTML5游戏断线自动重连的方法
Sep 18 Javascript
Vue代码分割懒加载的实现方法
Nov 23 Javascript
vue2实现可复用的轮播图carousel组件详解
Nov 27 Javascript
cropper js基于vue的图片裁剪上传功能的实现代码
Mar 01 Javascript
在vue中使用SockJS实现webSocket通信的过程
Aug 29 Javascript
vue-cli3.0配置及使用注意事项详解
Sep 05 Javascript
在node中使用jwt签发与验证token的方法
Apr 03 Javascript
layui表格内放置图片,并点击放大的实例
Sep 10 Javascript
vue实现输入框自动跳转功能
May 20 Javascript
CSS鼠标响应事件经过、移动、点击示例介绍
Sep 04 #Javascript
原生javascript图片自动或手动切换示例附演示源码
Sep 04 #Javascript
javascript 获取图片尺寸及放大图片
Sep 04 #Javascript
jQuery遍历Form示例代码
Sep 03 #Javascript
JS将秒换成时分秒实现代码
Sep 03 #Javascript
js导出table到excel同时兼容FF和IE示例
Sep 03 #Javascript
js综合应用实例简单的表格统计
Sep 03 #Javascript
You might like
深入PHP获取随机数字和字母的方法详解
2013/06/06 PHP
为你总结一些php信息函数
2015/10/21 PHP
php 中奖概率算法实现代码
2017/01/25 PHP
PHP设计模式之建造者模式(Builder)原理与用法案例详解
2019/12/12 PHP
PHP pthreads v3使用中的一些坑和注意点分析
2020/02/21 PHP
PHP代码加密的方法总结
2020/03/13 PHP
JavaScript实现禁止后退的方法
2006/12/27 Javascript
javascript 放大镜效果js组件 qsoft.PopBigImage.v0.35 加入了chrome支持
2009/04/07 Javascript
javascript正则表达式中参数g(全局)的作用
2010/11/11 Javascript
jquery 触发a链接点击事件解决方案
2013/05/02 Javascript
关于innerHTML后丢失动态绑定的EVENT问题解决方法
2013/05/19 Javascript
JS使用getComputedStyle()方法获取CSS属性值
2014/04/23 Javascript
AngularJS表单编辑提交功能实例
2015/02/13 Javascript
如何利用AngularJS打造一款简单Web应用
2015/12/05 Javascript
jQuery+ajax简单实现文件上传的方法
2016/06/03 Javascript
关于Iframe父页面与子页面之间的相互调用
2016/11/22 Javascript
js通过classname来获取元素的方法
2016/11/24 Javascript
JavaScript实现点击按钮复制指定区域文本(推荐)
2016/11/25 Javascript
div实现自适应高度的textarea实现angular双向绑定
2017/01/08 Javascript
利用JS实现简单的日期选择插件
2017/01/23 Javascript
jQuery排序插件tableSorter使用方法
2017/02/10 Javascript
JavaScript交换两个变量方法实例
2019/11/25 Javascript
Python3.4实现从HTTP代理网站批量获取代理并筛选的方法示例
2017/09/26 Python
Python读取Json字典写入Excel表格的方法
2018/01/03 Python
浅析Python 3 字符串中的 STR 和 Bytes 有什么区别
2018/10/14 Python
Python3爬虫爬取英雄联盟高清桌面壁纸功能示例【基于Scrapy框架】
2018/12/05 Python
代码详解django中数据库设置
2019/01/28 Python
python Qt5实现窗体跟踪鼠标移动
2019/12/13 Python
python Popen 获取输出,等待运行完成示例
2019/12/30 Python
Selenium 安装和简单使用的实现
2020/12/04 Python
pip 20.3 新版本发布!即将抛弃 Python 2.x(推荐)
2020/12/16 Python
德国家具、照明、家居用品网上商店:Wayfair.de
2020/02/13 全球购物
关于毕业的中学校园广播稿
2014/01/26 职场文书
甜美蛋糕店创业计划书
2014/01/30 职场文书
企业法人代表任命书
2014/06/06 职场文书
攻击最高的10只幽灵系神奇宝贝,坚盾剑怪排第一,第五最为可怕
2022/03/18 日漫