JS中Safari浏览器中的Date

在js中处理Date时,发现Safair和其他浏览器的支持方式不一致

1、例如:2021-12-08 11:00:00
在其他浏览器中,使用这个格式的字符串进行new Date操作没问题,但是在Safari中会提示Invalid Date;
Safari中不支持‘-’格式的日期字符串,将其替换成‘/’变成2021/12/08 11:00:00即可正常使用

2、例如:2021-12-08T11:00:00
此格式的日期字符串在Safari中也是不得到支持的,需要将字符串中的‘T’替换成空格

// 时间格式转时间戳
new Date('2021/12/08 11:00:00').getTime();


// 时间戳转时间格式
function formatDate(date) {
    var year = date.getFullYear();
    var month = date.getMonth() + 1;
    var day = date.getDate();
    var hour = date.getHours();
    var minute = date.getMinutes();
    var second = date.getSeconds();
     //  return year+"-"+month+"-"+date+" "+hour+":"+minute+":"+second; 
    return year + '-' + (String(month).length > 1 ? month : '0' + month) + '-' +
                (String(day).length > 1 ? day : '0' + day) + ' ' + (String(hour).length > 1 ? hour : '0' + hour) + ':' + (String(minute).length > 1 ? minute : '0' + minute)
                + ':' + (String(second).length > 1 ? second : '0' + second)
}
//如果记得时间戳是毫秒级的就需要*1000 不然就错了记得转换成整型
var d = new Date(1634270400000);
console.log(formatDate(d))
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值