Convert time to client local time in javascript
本问题已经有最佳答案,请猛点这里访问。
如果我现在有一些UTC时间。 来自json格式的后端,如:
1 | cache_time:"2019-04-29 06:12:06" |
例如。 一些用户将在另一个国家或城市打开页面。 我如何使用javascript将其转换为此用户时间?
带有"2019-04-29 06:12:06"的字符串不表示时区。 如果在末尾添加"Z",则内置Date函数会理解时间是UTC。
1 2 3 4 5 | const cache_time ="2019-04-29 06:12:06"; const date = new Date ( cache_time +"Z" ); console.log("UTC TIME", date.toISOString()) console.log("LOCAL TIME", date.toLocaleString() ); |
使用Moment.js库:
1 2 3 4 5 6 | date = new Date("2019-04-29 06:12:06Z"); var withoutUTC = moment(date).toString(); var withUTC = moment.utc(date).toString(); console.log(withoutUTC) console.log(withUTC) |
1 | <script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.1/moment.js"> |
使用moment.js将utc转换为本地时间。在您的情况下:
或者您可以使用基于moment.js的spacetime.js,并考虑时区。