[英]Extract date and time from datetime string in javascript
我的日期时间字符串格式如下:
var sdt = '2022-05-19T13:00:00';
我想分别提取日期和时间,下面是我的代码:
((sdt.getMonth() > 8) ? (sdt.getMonth() + 1) : ('0' + (sdt.getMonth() + 1))) + '/' + ((sdt.getDate() > 9) ? sdt.getDate() : ('0' + sdt.getDate())) + '/' + sdt.getFullYear() + ' ' + (sdt.getHours()) + ':' + (sdt.getMinutes()) + ':00'
从上面的代码中,可以正确提取日期,但不能正确提取时间。 有什么帮助吗?
您可以使用Date对象并使用Date#toLocaleDateString & Date#toLocaleTimeString方法来获取您的时间和日期
甚至是Date#toLocaleString同时获得两者!
const sdt = '2022-05-19T13:00:00'; const date = new Date(sdt) console.log(date.toLocaleString()) console.log(date.toLocaleDateString()) console.log(date.toLocaleTimeString())
请注意,您可以指定位置以获取当前国家/地区的日期
date.toLocaleString('en-GB')
使用Date()构造函数:
const sdtString = '2022-05-19T13:00:00'; // https://en.wikipedia.org/wiki/ISO_8601
const sdt = new Date(sdtString); // Date Object {}
然后获取相应的日期/时间使用:
另外,值得记住的是getMonth()
给出了月份的索引(从零开始),而不是数字。
在处理 date 和 time 时,我总是使用 moment.js。 只需传递日期时间字符串并指定所需的输出格式。
import moment from 'moment'
var sdt = '2022-05-19T13:00:00';
let time = moment(sdt).format("HH:mm:ss")
let date = moment(sdt).format("DD/MM/YYYY")
console.log(time) //01:00:00
console.log(date) //19/05/2022
https://momentjs.com/查看此页面以了解更多格式
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.