繁体   English   中英

如何使用jQuery / Javascript更改日期格式?

[英]How to change date format using jQuery/Javascript?

今天我想用jQuery / Javascript从日期转换成不同的格式:

$date = '2013-04-01T19:45:11.000Z'
$cool = date('Y-m-d',strtotime($date));

我怎么能在jQuery / Javascript中做到这一点(PHP)?

谢谢!

使用javascript日期对象

<script>
  var date = new Date('2013-04-01T19:45:11.000Z');
  var day = date.getDate();
  var month = date.getMonth();
  var year = date.getFullYear();

  document.write(year + '-' + month + '-' + day);
</script>

你需要这样的日期格式为javascript Sun, 01 Sep 13 08:06:57 +0000所以在PHP中你需要做这样的事情

date_default_timezone_set('Australia/Perth');
echo date('D, d M y H:i:s')." +0000";

你可以尝试用jQuery来检查它

$.get('dateformat.php', function(data) {
  date = new Date(data);
  console.log(date);  
});

然后你可以根据需要格式化日期

自行格式化日期对象的示例:

$.date = function(dateObj) {
    var d = new Date(dateObj);
    var day = d.getDate();
    var month = d.getMonth() + 1;
    var year = d.getFullYear();

    if (month < 10) {
        month = "0" + month;
    }
    return year + "." + month + "." + day;
};

一个jquery插件,可以帮助您格式化类似于php的日期

https://github.com/phstc/jquery-dateFormat

您可以使用它来应用这样的格式

$.format.date("2009-12-18 10:54:50.546", "Test: dd/MM/yyyy")

我想就是这样。

如果您的目标是更新的浏览器,那么您可以直接在JavaScript中解析它,如fujy或LeGrande所示。 但是,当您这样做时,请了解您传递的UTC日期将转换为浏览器的本地时区。

如果您想要更多的灵活性和完全的浏览器兼容性,那么您应该使用像moment.js这样的库。

// Parse it to a moment
var m = moment("2013-04-01T19:45:11.000Z");

// Format it in local time in whatever format you want
var s = m.format("YYYY-MM-DD  HH:mm:ss")

// Or treat it as UTC and then format it
var s = m.utc().format("YYYY-MM-DD  HH:mm:ss")

JavaScript足够聪明,可以接受不同格式的日期

var d1 = new Date('2013-04-01T19:45:11.000Z');

暂无
暂无

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

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