繁体   English   中英

更改日期格式javascript

[英]Changing date format javascript

我从两个不同的API中提取了一些数据,后来我想要这些对象。

但是,我有两种不同的日期格式:此格式为“1427457730”,格式为“2015-04-10T09:12:22Z”。 如何更改其中一种格式,以便使用相同的格式?

$.each(object, function(index) {
  date = object[index].updated_at;
}

这是一个选项:

var timestamp  = 1427457730;
var date       = new Date(timestamp * 1000); // wants milliseconds, not seconds
var dateString = date.toISOString().replace(/\.\d+Z/, 'Z'); // remove the ms

dateString现在将是2015-03-27T12:02:10Z

试试moment.js

 var timestamp = 1427457730; var date = '2015-04-10T09:12:22Z'; var m1 = moment(timestamp); var m2 = moment(date); console.log(m1); console.log(m2); 
 <script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.11.1/moment.min.js"></script> 

您可以使用.format()方法将日期解析为您想要的任何格式,如:

m2.format('YYYY MMM DD ddd HH:mm:ss') // 2015 Apr 10 Fri 17:12:22

查看文档以获取更多格式标记

您在javascript中可能需要的是日期对象。
第一个字符串是epoch以来的秒,javascript需要毫秒,所以乘以1000;
第二个字符串是有效的ISO日期,因此如果字符串包含连字符,则将其传递给new Date

var date = returned_date.indexOf('-') !== -1 ? returned_date : returned_date * 1000;

var date_object = new Date(date);

将这两种类型都放入日期对象中,您甚至可以将其转换为方便的功能

function format_date(date) {
    return new Date(date.indexOf('-') !== -1 ? date : date * 1000);
}

小提琴

看看http://momentjs.com/ 它是JavaScript的日期/时间格式库 - 使用起来非常简单,非常灵活。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM