Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/435.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何格式化日期对象,使其提供yyyy-MM-dd hh:MM:ss_Javascript_Date - Fatal编程技术网

Javascript 如何格式化日期对象,使其提供yyyy-MM-dd hh:MM:ss

Javascript 如何格式化日期对象,使其提供yyyy-MM-dd hh:MM:ss,javascript,date,Javascript,Date,我有日期对象,希望格式化它 这是我希望能够打印的格式 yyyy mm dd hh:mm:ss 2017-08-09 19:48:54 无论我尝试什么,我都无法使用console.log打印它。我总是得到这样的东西 Wed Aug 09 2017 19:48:54 GMT+0200 (Central Europe Daylight Time) or Wed, 09 Aug 2017 17:48:54 GMT 我不需要所有这些额外的信息嵌入。如果我创建日期对象,时间是19:53:00,日期是20

我有日期对象,希望格式化它

这是我希望能够打印的格式

yyyy mm dd hh:mm:ss

2017-08-09 19:48:54

无论我尝试什么,我都无法使用console.log打印它。我总是得到这样的东西

Wed Aug 09 2017 19:48:54 GMT+0200 (Central Europe Daylight Time)
or
Wed, 09 Aug 2017 17:48:54 GMT
我不需要所有这些额外的信息嵌入。如果我创建日期对象,时间是19:53:00,日期是2017-08-09,那么我只需要这个2017-08-98 19:53:00

我怎样才能确切地知道呢?我需要像那样将此文件发送到服务器。

您可以使用库:

这很好:

function T(n) { return n<10?'0'+n:n; }
var d = new Date();
var formatted = d.getFullYear()+'-'+T(d.getMonth())+'-'+T(d.getDay())+' '+T(d.getHours())+':'+T(d.getMinutes())+':'+T(d.getSeconds());
console.log(formatted); // => 2017-07-03 19:08:30
函数T(n){返回n 2017-07-03 19:08:30
我建议您考虑使用建议,当某些东西作为标准提供时,使用外部库是没有用的;加载库在开发人员和执行时间上是昂贵的。这是一个可行且直接的解决方案。OP可能还是想做非标准的事情。但感谢您的评论,用户可能会n为了不使用它,我将更新为:)我可以访问我项目中的时刻,如何将我的日期对象设置为时刻对象,以便按照您的建议格式化它?
时刻(myDate)应该根据BOX进行更新,检查也是值得的,并考虑如果你使用的答案,答案是:好的答案,但是它值得先检查明显的重复,然后只是标记问题。2017—08- 09T17:55:59428 Z不是一个问题,但是当你看到时间是4个小时时,I想要2017-08-09 13:55:59@maxit我在GMT-4中,ISO8601总是在GMT中,所以这就是我的结果。要处理时区,你需要一些更复杂的东西,比如矩。js。嗨,我使用矩,但是我在服务器上实现了对时区的处理,我允许我的应用程序的用户选择他所在的时区。这就是为什么我需要将用户在用Vue编写的datetime picker组件中选择的简单时间格式发送到服务器,该组件为我提供了这种格式:2017-08-09T17:55:59.428Z,但这是一个问题,因为服务器采用这种格式并应用其计算,时间最终是错误的。也许我应该在clien上进行所有时区计算t而不是服务器?根据您的经验,什么是更好的方法?我在后端使用php,在节省时间时,我使用此库将时间转换为正确的时区。我执行类似于Timezone::convertToUTC($published_at,Auth::user()->Timezone)的操作;以及在从db Timezone::convertFromUTC($this->attributes['published_at'],$时区,'Y-m-d H:i')这对我来说很好。但是在客户端上这样做是不是更好的选择?你的<代码> t>代码>函数可以连接<代码> n>代码>的值,所以你不必调用GETTER两次:“ULYSSEBN辉煌,谢谢。T函数也会返回一个字符串,有时也会返回其他字符串,考虑它总是返回一个字符串:<代码> RET。瓮
const myDate = new Date()
moment(myDate).format('YYYY-MM-DD HH:mm:ss')
let d = new Date();  // prints Wed Aug 09 2017 13:55:59 GMT-0400
d.toISOString();     // prints "2017-08-09T17:55:59.428Z"
// process the string to output in your desired format
function T(n) { return n<10?'0'+n:n; }
var d = new Date();
var formatted = d.getFullYear()+'-'+T(d.getMonth())+'-'+T(d.getDay())+' '+T(d.getHours())+':'+T(d.getMinutes())+':'+T(d.getSeconds());
console.log(formatted); // => 2017-07-03 19:08:30