Javascript React Native,date.getTime()的结果在调试模式和正常模式下不同
在调试模式和正常模式下,date.getTime()的结果不同 我知道web浏览器JS解释器和React原生JSCore的行为是不同的 在上一个例子中,我通过将日期字符串中的空格改为T来解决这个问题,但是在这个例子中T已经存在。 所以我不知道如何解决这个问题Javascript React Native,date.getTime()的结果在调试模式和正常模式下不同,javascript,react-native,Javascript,React Native,在调试模式和正常模式下,date.getTime()的结果不同 我知道web浏览器JS解释器和React原生JSCore的行为是不同的 在上一个例子中,我通过将日期字符串中的空格改为T来解决这个问题,但是在这个例子中T已经存在。 所以我不知道如何解决这个问题 const dateString = '2019-08-30T14:27:32'; const date = new Date(dateString); console.log(date.getTime()); in debug 1567
const dateString = '2019-08-30T14:27:32';
const date = new Date(dateString);
console.log(date.getTime());
in debug
1567142852000
in normal
1567175252000
这是由于JS在本地时区处理日期造成的。始终使用UTC强> ECMAScript标准说 您可能希望尝试以下方法:
var UTC=new Date(Date.UTC(year,month-1,day,0,0,0,0));
或者,如果您想使用字符串versino,则添加一个Z
,使其处于UTC时区
let date = new Date('2011-04-11T10:20:30Z');
console.log(date.getTime());
如果你真的想,你可以使用一个日期js库,比如
let date = new Date('2011-04-11T10:20:30Z');
console.log(date.getTime());