2019独角兽企业重金招聘Python工程师标准>>>

字符串格式日期利用阅读,但不利于标准化存储,可以通过以下函数转化为Javascript日期类:

// date = '2015-02-15'
function parseISO8601(date){var matches = date.match(/^\s*(\d{4})-(\d{1,2})-(\d{1,2})\s*$/);if(matches){this.setFullYear(parseInt(matches[1]));this.setMonth(parseInt(matches[2]) - 1);this.setDate(parseInt(matches[3]));}return this;
}

不过这样得到的日期是本地时间,如果要保存为标准时间戳(Timestamp),需使用setUTCFullYearsetUTCHours方法:

// datetime = '2015-02-15 11:15:00'
function datetimeToTimestamp(datetime) {var a = datetime.split(" ");var d = a[0].split("-");var t = a[1].split(":");var date = new Date();date.setUTCFullYear(d[0],(d[1] - 1),d[2]);date.setUTCHours(t[0],t[1],t[2],0);return date.getTime();
}

补充一个日期转字符串格式化方法:

/*** 将 Date 转化为指定格式的string(本地时间)* @function formatDate* @param {Date} date* @param {string} [fmt=yyyy-MM-dd HH:mm:ss]* @returns {String}
*/
function formatDate (date, fmt) {if (!date || isNaN(date)) return '';if (!fmt) fmt = 'yyyy-MM-dd HH:mm:ss';var o = {"M+": date.getMonth() + 1, //月份"d+": date.getDate(),      //日"h+": date.getHours()%12 === 0 ? 12 : date.getHours()%12, //小时"H+": date.getHours(),     //小时"m+": date.getMinutes(),   //分"s+": date.getSeconds()    //秒};if (/(y+)/.test(fmt)) {fmt = fmt.replace(RegExp.$1, (date.getFullYear() + "").substr(4 - RegExp.$1.length));}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;
}

参考链接:

  • javascript-dates-in-ie-nan-firefox-chrome-ok
  • js日期格式化

转载于:https://my.oschina.net/u/2324376/blog/400001

JS日期格式化(从YYYY-MM-DD到日期类)相关推荐

  1. Js日期yyyy-MM-dd与yyyy/MM/dd的区别

    在JavaScript中日期yyyy-MM-dd格式与yyyy/MM/dd为不同的日期表达式 console.log('2020-10-29', new Date('2020-10-29')) con ...

  2. java 通配符 日期_java – 使用带有通配符支持的SimpleDateFormat解析日期字符串(例如* yyyy * MM * dd * hh * mm * ss)...

    首先,我想知道是否存在类似于SimpleDateFormat但是支持通配符的现有库?如果没有,最好的办法是什么? 我有这个问题,我需要匹配并从文件名中提取日期,但我似乎无法找到适合这种情况的方法.虽然 ...

  3. 年月日格式判断-正则表达式 YYYY/MM/DD、YYYY/MM/DD| YY/MM/DD、 ^(^(\d{4}|\d{2})(\-|\/|\.)\d{1,2}\3\d{1,2}$)|(^\d{4}…

    一.简单的日期判断(YYYY/MM/DD): ^\d{4}(\-|\/|\.)\d{1,2}\1\d{1,2}$ 二.演化的日期判断(YYYY/MM/DD| YY/MM/DD): ^(^(\d{4}| ...

  4. 【怒怼老乔】苹果手机ios系统居然特喵的不支持日期yyyy-MM-dd HH:mm:ss.ms,只支持 yyyy/MM/dd HH:mm:ss

    苹果手机ios系统居然特喵的 不支持日期yyyy-MM-dd HH:mm:ss.ms, 只支持yyyy/MM/dd HH:mm:ss 我只能用 .replace(/\-/g,'\/'); 来替换掉了, ...

  5. 将字符串格式yyyy/MM/dd的字符串转为日期,格式“yyyy-MM-dd“

    将字符串格式yyyy/MM/dd的字符串转为日期,格式"yyyy-MM-dd" public static String strToDateFormat(String date) ...

  6. YYYY/MM/dd 日期format的幺蛾子

    其实YYYY/MM/dd 和yyyy/MM/dd是不同的,而且YYYY/MM/dd 可能会出现年份的大bug,下面直接上代码 @org.junit.Testpublic void dateYYYY() ...

  7. Python写,将输入的yyyy/mm/dd格式的日期显示为yyyy年mm月dd日。

    7.(程序题)编程将输入的yyyy/mm/dd格式的日期显示为yyyy年mm月dd日. str = input("请输入日期:") length=len(str) if str[6 ...

  8. vue3时间格式转换为yyyy/mm/dd,yyyy-MM-dd,yyyy-MM-dd hh:mm:ss,hh:mm,yyyy-MM-ddThh:mm:ss+08:00

    时间格式转换为yyyy/mm/dd export const dateFormat1 = (time = new Date().getTime()) => { //YYYY/MM/DDconst ...

  9. yyyy/mm/dd变成yyyy-mm-dd

    当电脑的日期格式不是yyyy/mm/dd的形式的时候,假使是yyyy-mm-dd格式, 即便在程序中格式化日期格式yyyy/mm/dd,但是做成的日期却是yyyy-mm-dd. 不能只是单纯的Shor ...

  10. Kettle5.2 couldn't convert string [...] to a date using format [yyyy/MM/dd HH:mm:ss.SSS]

    使用kettle出现 couldn't convert string [...] to a date using format [yyyy/MM/dd HH:mm:ss.SSS] 试了各种方法,最后发 ...

最新文章

  1. java通过System.getProperty获取系统属性
  2. 代写python代码一般多少钱_代写CO 353课程作业、代做Python程序设计作业、代写Python语言作业...
  3. promise的状态值_什么是Promise,Promise的三种状态
  4. (转)淘淘商城系列——zookeeper单机版安装
  5. Intent常用使用汇总
  6. 西北农林科技大学c语言上机题题答案,西北农林科技大学C语言上机实习4答案
  7. 有哪些英文论文查重软件值得推荐?
  8. 公有云管理的一般建议
  9. JMeter-配置元件-HTTP授权管理器
  10. x的x分之一次方极限x趋于0_e的x分之一的左右极限
  11. react18.0.0+ts路由配置
  12. css 绘制心形图案
  13. RK系列(RK3568) 收音机tef6686芯片驱动,i2c驱动
  14. 志愿者报名图片大小调整
  15. unity笔记_四舍六入五成双
  16. Visual Question Answering with Textual Representations for Images 论文笔记
  17. 解决宝塔面板Nginx反向代理Cloudflare出现502或403错误
  18. Hystrix Dashboard
  19. centos8 设置运行模式及恢复
  20. iOS获取设备和APP权限信息(内含plist文件的读写)

热门文章

  1. catkin_make
  2. Windows编程—获取Chrome浏览器的安装目录
  3. 【转载】C#中可使用string.Empty代表空字符
  4. C#单元测试如何查看输出的调试信息?
  5. html与js加载的顺序问题defer 代表延迟(加载完所有html在执行js)
  6. 每天至少保证4个小时的学习时间
  7. 使用Discuz!自带参数防御CC攻击以及原理,修改Discuz X 开启防CC攻击后,不影响搜索引擎收录的方法...
  8. iOS 开发之 - iOS6适配 - 导航栏按钮透明方法
  9. 4.12L.02_CT Makefile
  10. Json(四):Json增、删、改