Javascript 解析,格式化日期
来源:http://gwbasic.iteye.com
/* 将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 ''; }
/* 将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 '';}
Javascript 解析,格式化日期相关推荐
- 如何使用LocalDateTime解析/格式化日期? (Java 8)
本文翻译自:How to parse/format dates with LocalDateTime? (Java 8) Java 8 added a new java.time API for wo ...
- 如何在 JavaScript 中格式化日期?
问: 如何将 Date 对象格式化为字符串? huntsbot.com汇聚了国内外优秀的初创产品创意,可按收入.分类等筛选,希望这些产品与实践经验能给您带来灵感. 答1: HuntsBot周刊–不定时 ...
- javascript解析JSON返回的日期格式
javascript解析JSON返回的日期格式 返回的JSON格式 /Date(1563162120000)/ 解析后的日期 2019-07-15 11:42:00 // 格式化josn字符串 fun ...
- java 格式化解析_java日期格式化、解析
今天移植别人的通用工具类,涉及到了日期的格式化.解析,学习结果记录如下. 日期的格式化器普用的是SimpleDateFormat,它继承了了DateFormat.SimpleDateFormat为用户 ...
- 第一百零四节,JavaScript时间与日期
JavaScript时间与日期 学习要点: 1.Date类型 2.通用的方法 3.格式化方法 4.组件方法 ECMAScript提供了Date类型来处理时间和日期.Date类型内置一系列获取和设置日期 ...
- JavaScript 时间与日期处理实战:你肯定被坑过
本部分的知识图谱请参考编程语言知识图谱-时间与日期. 本文JavaScript 时间与日期处理实战:你肯定被坑过从属于笔者的Web 前端入门与最佳实践中 JavaScript 入门与最佳实践系列文章. ...
- 带参数的过滤器|| 过滤器案例:格式化日期|| time.js ||
带参数的过滤器 过滤器案例:格式化日期 <!DOCTYPE html> <html lang="en"> <head><meta char ...
- java 日期 解析_Java日期解析(Java DATE Parsing)
Java日期解析(Java DATE Parsing) 我有一个java.util.Date的愚蠢问题. 我有这一行代码,但我不明白为什么这个日期是用这种格式无法解析的. public class T ...
- Java—格式化日期/时间
关注微信公众号:CodingTechWork,一起学习进步. DateFormat DateFormat继承MessageFormat,是实现日期格式化的抽象类.提供两个方法:format()用 ...
最新文章
- day07-字符编码、文件操作
- 有了ROS这架车,SLAM之路不再遥远!
- VTK:PolyData之PointNormals
- 如何使用 Go 语言搭建企业级高并发服务器?
- Hello World(本博客启程篇)
- stackoverflow favorites
- 有关Cassandra节点之间的通信:Gossip【译】
- 【Java】java中 ==,equals,hashcode
- 手机运行内存越大就越好吗?4GB与8GB的差距真的很明显吗?
- 主梁弹性模量计算_桥梁支座详解全攻略!图文+计算详解,值得收藏!
- 如何在在线直播网站源码中,实现视频连麦直播?
- 读取 system serial number
- Android ActivityManager类
- JMP软件在六西格玛项目管理中高阶应用(五)
- 手机查看IGES,STP,STEP格式3D模型免费APP推荐-CAD Assistant
- IDEA中Maven项目中报错:10 unmapped Spring configuration files
- error:尝试引用已删除的函数或已显式删除函数
- windows录屏_电脑是怎么录屏的呢?推荐三个录屏实用方法
- 微信小程序从零开始开发步骤(一)
- 小试牛刀 python股票查询程序
热门文章
- oralce 11g data guard
- [翻译]“LINQ to Objects”提供程序是否内置性能优化?
- 如何调用 DLL 中的函数
- Android—Bitmap图片大小计算、压缩与三级缓存
- python字符串添加_python字符串的增删改查
- java jar 源码乱码,java使用jar包时出现乱码的解决方法
- 不连续曲线 highcharts_无人车运动规划中常用的方法:多项式曲线
- python连接oracle超时设置,Python连接Oracle设置过程记录
- python 视图对象_python web框架篇:views视图函数
- php mysql 绑定变量,在MYSQL中,怎么用PDO绑定变量的方式插入数据?