使用 new Date() 方法时在测试的时候可能没有问题;可是在真机运行的时候就会出现 NAN
遇到的问题
- 制作活动倒计时 ios 设备显示错误 android 显示正常
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| formatDuring (date) { const mss = new Date(date).getTime() - new Date().getTime() if (mss > 0) { const days = parseInt(mss / (1000 * 60 * 60 * 24)); const hours = parseInt((mss % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)); const minutes = parseInt((mss % (1000 * 60 * 60)) / (1000 * 60)); const seconds = (mss % (1000 * 60)) / 1000; this.timeRemaining = `活动剩余时间:${this.mynumber(days)}天${this.mynumber(hours)}时${this.mynumber(minutes)}分${this.mynumber(Math.floor(seconds))}秒`; } else { this.timeRemaining = '哎呀~你来晚了,活动已结束' } }
|
- 调用方法 formatDuring 传入的形参需要注意
1
| formatDuring('2018/11/26 23:59:59');
|
我之前在调用时 传入的参数是 2018-11-26 23:59:59
, 所以在真机 IOS 上就出现 NAN
总结
注意到日期 年月日分隔符 在 ios 移动端会报错 需要用 /
来作为分隔符 切记不能使用 -
在Android和 微信开发者工具 和 chrome 浏览器 中测试用-
都不会出现问题 唯独ios