js转化时间失败————Invalid Date

本文介绍了在PC端和移动端如何计算指定时间和当前时间的差值,通过JavaScript实现,详细展示了不同环境下时间字符串转换及计算的具体步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

假设现在有时间:

var str="2020-05-28 09:00:00";

想要算这个时间与当前本地时间 new Date()的时间差。

var date=new Date();

pc端:

可以使用 new Date(str),将当前时间转换为与date格式一样的时间。

然后将转换后的时间和date统一进行getTime();计算两个时间与 1970 年 1 月 1 日午夜相差得毫秒数。

str=new Date(str);
str=str.getTime();
date=date.getTime();

移动端:

移动端部分地方使用new Date(str)会报错Invalid Date,因为不是所有i浏览器都兼容getTime();

所以要换一种方式:


                var time = str.replace(/-/g, ':').replace(' ', ':');
                time = time.split(':');
                var end = new Date(time[0], (time[1] - 1), time[2], time[3], time[4], time[5]);
             
                 end=end.getTime();
                //时间差
                var leftTime = end - date;

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值