在JavaScript中将时间转换为客户端本地时间

时间:2019-04-29 07:22:53

标签: javascript reactjs date datetime

如果我现在有一些UTC时间。来自后端的json格式,例如:

cache_time: "2019-04-29 06:12:06"

,例如某些用户将在其他国家或城市打开页面。我如何使用javascript将其转换为该用户时间?

4 个答案:

答案 0 :(得分:0)

带有“ 2019-04-29 06:12:06”的字符串不表示时区。如果在末尾添加“ Z”,则内置的“日期”功能会了解时间是UTC。

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() );

答案 1 :(得分:-1)

使用时刻lib

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)
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.1/moment.js"></script>

答案 2 :(得分:-1)

使用moment.js将utc转换为本地时间。 npm install -g windows-build-tools

答案 3 :(得分:-2)

或者您可以使用spacetime.js,它基于moment.js并考虑了时区。 const localTimeDate = spacetime().now().format();