JS 判断一个字符串是否为日期格式(兼容IOS)

  1. isNaN(times) 是排除了times是纯数字的情况,如果不考虑这个情况的话,isNaN(times) 这部分就不需要了
  2. 因为IOS手机上时间格式必须为'2020/12/21 20:05:05',不支持'2020-12-21 20:05:05'所以我们需要将'-'替换为'/',如果不替换 Date.parse(new Date(times)) 在IOS上会输出 NaN ,下面代码已测试IOS可以正常使用
  3. reg.test(times) 这部分是为了考虑到其他输入错误的情况(只能是数字,/,:,-,空格),一般情况下日期格式就'2020/12/21 20:05:05''2020-12-21 20:05:05' 两种
var times = '2020-12-21 20:05:05';
var reg = /^[0-9,/:-\s]+$/;
if(!isNaN(Date.parse(new Date(times.replace(/-/g, '/')))) && isNaN(times) && reg.test(times)){
  console.log("times是日期格式!")
  // IOS 用alert测试就可以
}

你可能感兴趣的:(web前端,js,javascript)