文档章节

JS 把 String 转成 new Date()型

Half_candy
 Half_candy
发布于 2016/06/12 18:55
字数 357
阅读 48
收藏 4
点赞 0
评论 2

Date 转成 String

d.pattern("yyyy-MM-dd");

/**   
* 对Date的扩展,将 Date 转化为指定格式的String   
* 月(M)、日(d)、12小时(h)、24小时(H)、分(m)、秒(s)、周(E)、季度(q) 可以用 1-2 个占位符   
* 年(y)可以用 1-4 个占位符,毫秒(S)只能用 1 个占位符(是 1-3 位的数字)   
* eg:   
* (new Date()).pattern("yyyy-MM-dd hh:mm:ss.S") ==> 2006-07-02 08:09:04.423   
* (new Date()).pattern("yyyy-MM-dd E HH:mm:ss") ==> 2009-03-10 二 20:09:04   
* (new Date()).pattern("yyyy-MM-dd EE hh:mm:ss") ==> 2009-03-10 周二 08:09:04   
* (new Date()).pattern("yyyy-MM-dd EEE hh:mm:ss") ==> 2009-03-10 星期二 08:09:04   
* (new Date()).pattern("yyyy-M-d h:m:s.S") ==> 2006-7-2 8:9:4.18   
*/ 

Date.prototype.pattern=function(fmt) {
    var o = {
        "M+" : this.getMonth()+1, //月份     
        "d+" : this.getDate(), //日     
        "h+" : this.getHours()%12 == 0?12 : this.getHours()%12, //小时     
        "H+" : this.getHours(), //小时     
        "m+" : this.getMinutes(), //分     
        "s+" : this.getSeconds(), //秒     
        "q+" : Math.floor((this.getMonth()+3)/3), //季度     
        "S" : this.getMilliseconds() //毫秒     
    };
    var week = {
        "0" : "\u65e5",
        "1" : "\u4e00",
        "2" : "\u4e8c",
        "3" : "\u4e09",
        "4" : "\u56db",
        "5" : "\u4e94",
        "6" : "\u516d"
    };
    if(/(y+)/.test(fmt)){
        fmt=fmt.replace(RegExp.$1, (this.getFullYear()+"").substr(4 - RegExp.$1.length));
    }
    if(/(E+)/.test(fmt)){
        fmt=fmt.replace(RegExp.$1, ((RegExp.$1.length>1)?(RegExp.$1.length>2?"\u661f\u671f":"\u5468"):"")+week[this.getDay()+""]);
    }
    for(var k in o){
        if(new RegExp("("+ k +")").test(fmt)){
            fmt = fmt.replace(RegExp.$1, (RegExp.$1.length==1)?(o[k]):(("00"+ o[k]).substr((""+ o[k]).length)));
        }
    }
    return fmt;
}

js内置的format方法

Date date = new Date();

date.setFullYear(2011, 3, 8);         //这里设置的是2011年4月8日

注意:表示月份的参数介于 0 到 11 之间。也就是说,如果希望把月设置为 4月,则参数应该是 3。

 

© 著作权归作者所有

共有 人打赏支持
Half_candy
粉丝 1
博文 7
码字总数 357
作品 0
海淀
程序员
加载中

评论(2)

Half_candy
Half_candy

引用来自“吕兵阳”的评论

你自己写的也太复杂了!有轮子可用无需重复造!你可以搜搜moment.js完爆一切
ok, 谢谢啦.
吕兵阳
吕兵阳
你自己写的也太复杂了!有轮子可用无需重复造!你可以搜搜moment.js完爆一切
JavaScript函数以及基础写法汇总

今天四夕逛博客,突然看见JavaScript函数以及基础写法汇总,发现很有用,分享给使用JavaScript的朋友们。 1.document.write("");为 输出语句 2.JS中的注释为// 3.传统的HTML文档顺序是:docu...

oecp
2011/05/11
0
0
【JS教程】100+常用JS函数(方法)

100+常用JS函数(方法) 1. document.write("");为 输出语句 2. JS中的注释为// 3. 传统的HTML文档顺序是:document->html->(head,body) 4. 一个浏览器窗口中的DOM顺序是:window->(navig...

呢喃的猫咪
2012/06/08
0
0
百个JavaScript函数以及基础写法汇总

1.document.write("");为 输出语句 2.JS中的注释为// 3.传统的HTML文档顺序是:document->html->(head,body) 4.一个浏览器窗口中的DOM顺序是:window->(navigator,screen,history,location,doc......

oecp
2011/04/20
0
0
JavaScript中常用的函数以及基础写法汇总

1.document.write("");为 输出语句 2.JS中单行注释为//,多行注释为/**/ 3.传统的HTML文档顺序是:document->html-> (head,body) 4.一个浏览器窗口中的DOM顺序是:window-> (navigator,screen......

The-duke
2014/01/14
0
0
springmvc+uploadify3.2.1完整代码示例,java,jsp

前台页面: 引入js和css<script type="text/javascript" src="${STATICFILEPATH}/js/jquery/jquery-1.10.js${STATICFILEVERSION}"></script> <link type="text/css" rel="stylesheet" href=......

满风
2014/10/15
0
6
javascript中的+ 和 “”

在javascript中,“+”除了是操作符, var c = 1+1; // 2 还可以通过"+" 将类型转化成int型 var x = '1' //x = +x // 1var now = new Date(); // Wed Aug 12 2015 14:51:20 GMT+0800 (中国标......

bosscheng
2015/08/12
0
0
javascript对象类型判断

1.使用typeof操作符 typeof操作符号的作用是返回一个用于只是其操作对象类型的字符串。语法如下: typeof val 参数作为一个表达式,代表了javascript中的对象类型或基本数据类型,运算会返回...

big军
2013/12/20
0
0
JavaScript的简单复习

JavaScript的简单复习 JS的两种加载方式: 1.内部加载 内部加载,写在<script>标签内部 2.外部加载 写在<script>的src目录中,使用外部加载js文件的时候,js解析引擎不解析script标签体中的代码...

Lunqi
2015/08/07
0
0
JS日期格式化(从YYYY-MM-DD到日期类)

字符串格式日期利用阅读,但不利于标准化存储,可以通过以下函数转化为Javascript日期类: 不过这样得到的日期是本地时间,如果要保存为标准时间戳(Timestamp),需使用和方法: 补充一个日...

一点灵犀
2015/04/13
0
0
php、js、java的正则替换文本方式制作模板内容输出

在制作模板内容输出时,很经常会使用<%=%>之类的占位符,用正则的方式很方便替换这个内容, 工作中只接触到java、php、js,三种语言的 简单的实现方式: java版 import java.util.HashMap; ...

penngo
2013/01/17
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

实现异步有哪些方法

有哪些方法可以实现异步呢? 方式一:java 线程池 示例: @Test public final void test_ThreadPool() throws InterruptedException { ScheduledThreadPoolExecutor scheduledThre......

黄威
今天
0
0
linux服务器修改mtu值优化cpu

一、jumbo frames 相关 1、什么是jumbo frames Jumbo frames 是指比标准Ethernet Frames长的frame,即比1518/1522 bit大的frames,Jumbo frame的大小是每个设备厂商规定的,不属于IEEE标准;...

六库科技
今天
0
0
牛客网刷题

1. 二维数组中的查找(难度:易) 题目描述 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入...

大不了敲一辈子代码
今天
0
0
linux系统的任务计划、服务管理

linux任务计划cron 在linux下,有时候要在我们不在的时候执行一项命令,或启动一个脚本,可以使用任务计划cron功能。 任务计划要用crontab命令完成 选项: -u 指定某个用户,不加-u表示当前用...

黄昏残影
昨天
0
0
设计模式:单例模式

单例模式的定义是确保某个类在任何情况下都只有一个实例,并且需要提供一个全局的访问点供调用者访问该实例的一种模式。 实现以上模式基于以下必须遵守的两点: 1.构造方法私有化 2.提供一个...

人觉非常君
昨天
0
0
《Linux Perf Master》Edition 0.4 发布

在线阅读:https://riboseyim.gitbook.io/perf 在线阅读:https://www.gitbook.com/book/riboseyim/linux-perf-master/details 百度网盘【pdf、mobi、ePub】:https://pan.baidu.com/s/1C20T......

RiboseYim
昨天
1
0
conda 换源

https://mirrors.tuna.tsinghua.edu.cn/help/anaconda/ conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/conda config --add channels https://mir......

阿豪boy
昨天
1
0
Confluence 6 安装补丁类文件

Atlassian 支持或者 Atlassian 缺陷修复小组可能针对有一些关键问题会提供补丁来解决这些问题,但是这些问题还没有放到下一个更新版本中。这些问题将会使用 Class 类文件同时在官方 Jira bug...

honeymose
昨天
0
0
非常实用的IDEA插件之总结

1、Alibaba Java Coding Guidelines 经过247天的持续研发,阿里巴巴于10月14日在杭州云栖大会上,正式发布众所期待的《阿里巴巴Java开发规约》扫描插件!该插件由阿里巴巴P3C项目组研发。P3C...

Gibbons
昨天
1
0
Tomcat介绍,安装jdk,安装tomcat,配置Tomcat监听80端口

Tomcat介绍 Tomcat是Apache软件基金会(Apache Software Foundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。 java程序写的网站用tomcat+jdk来运行...

TaoXu
昨天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部