//此文章用vue写的,如果使用js写方法名字前面添加function // 格式化时间 formatterDate( { let strSpl = "1/2/2007"; //"1-2-2007","2007-2-1" return this.dateFormat(strSpl.trim()); }, dateFormat( str) { let date = new Date(str); let isV = this.isValidDate(date); if(!isV){ let valSplit = str.split("/"); return valSplit[2]+"-"+valSplit[1]+"-"+valSplit[0] } console.log(isV); let fmt = "YYYY-mm-dd"; let ret; const opt = { "Y+": date.getFullYear().toString(), // 年 "m+": (date.getMonth() + 1).toString(), // 月 "d+": date.getDate().toString(), // 日 "H+": date.getHours().toString(), // 时 "M+": date.getMinutes().toString(), // 分 "S+": date.getSeconds().toString() // 秒 // 有其他格式化字符需求可以继续添加,必须转化成字符串 }; for (let k in opt) { ret = new RegExp("(" + k + ")").exec(fmt); if (ret) { fmt = fmt.replace(ret[1], (ret[1].length == 1) ? (opt[k]) : (opt[k].padStart(ret[1].length, "0"))) }; }; return fmt; }, // 判断是否可以转换为时间格式 isValidDate(date) { return date instanceof Date && !isNaN(date.getTime()) }
vue字符串格式化时间格式,以及出现不同类型以及出现NaN问题(随手笔)
于 2022-04-21 16:20:40 首次发布