JavaScript-Date()在Safari遇到的问题

在Safari浏览器中从yyyy-mm-dd 00:00:00格式转化为Date对象中间的空格必需替换为”T”!
举例:

let date = new Date();
// 输出 当前时间 转为 yyyy-mm-dd 00:00:00 格式
console.log(timestampToTime(date));
// 输出 转回 Date() 对象
console.warn(new Date(timestampToTime(date)));
// 中间的空格替换之后
console.error(new Date(timestampToTime(date).replace(' ', 'T')));
function timestampToTime(timestamp) {
  let date = new Date(timestamp);
  let Y = date.getFullYear() + '-';
  let M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-';
  let D = date.getDate() < 10 ? '0' + date.getDate() + ' ': date.getDate() + ' ';
  return Y + M + D + '00:00:00';
}

输出结果:
Chrome:WX20190102-173530@2x
Safari:WX20190102-173718@2x
结论:可以看到同样是从 2019-01-02 00:00:00转化为Date对象 在Chrome中转换成功,但是在Safari中输出为null

文章已创建 112

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

相关文章

开始在上面输入您的搜索词,然后按回车进行搜索。按ESC取消。

返回顶部