let year = new Date().getFullYear(); //获取年份
        let month = new Date().getMonth() + 1 ; //获取月份,0-11月份是,需要+1
        let  date = '' 
        //判断日期是不是单数,是就补个0在前面
        //month是int,没有length,所以转一下
        if(month.toString().length == 1){
            date = year + '-0' + month
        }else{
            date = year  + '-' + month
 

之前都是这样写的,用if判断,比较啰嗦,现在发现了一个方法,可以一句话完事

        let year = new Date().getFullYear();
        let month = new Date().getMonth() + 1 ;
        let  date = `${year}-${month.toString().padStart(2,"0")}` //字符串拼接符``

使用padStart方法,第一个参数是规定字符串要几位数,后面参数是位数不够的话补什么,方向的话,start肯定是从开头开始补,

相对的还有padEnd,用法一样的,就是补的话从屁股开始补

mysql支持用month()取某时间的月份,但是只能取出1,2,3…12这样的格式,如果需要01,02,03…10,11,12这样的就不行了。 然后经过一段时间的搜索之后,找到一个方法,亲测可行。 Select Right(100 + Month(需要获取月份的时间), 2) 其实就是用这个月份加100,然后取最后两位数,这样就能保住取出来的月份如果是个位数前面自动0了。
mouth和day不到两位时在前0,即2021-7-31 ->2021-07-31 new Date().toString().padStart(2,0); padStart()一共接受两个参数,第一个参数用来指定字符串的最小长度,第二个参数是用来全的字符串。 多请看:介绍
var myDate = new Date(); var year = myDate.getFullYear(); var month = ("0" + (myDate.getMonth() + 1)).slice(-2); var day = ("0" + myDate.getDate()).slice(-2); var nowDate = year + '-' + month + ‘-’ + ...
某公司培训系统被用户反馈时间筛选无法显示全部数据,该系统使用数据库为Oracle。 首先登录系统模拟用户操作,复现Bug;对比发现数据确实显示不完整,浏览器调出控制台 -> 网络,得到请求接口,接着打开项目,全局搜索接口,检查SQL是否缺陷,一系列操作后发现接口无误,下一步,排查数据。 既然接口正常,那么可以考虑数据格式问题,接口接受的参数格式为:yyyy-mm,查询对应的数据库表,发现存在三种格式数据,分别是:yyyy-mm、yyyy-m、yyyy-mm-dd。而系统接口只能查询
我们经常遇到这样的问题,当后端返给我们的月份小于10时(2019-1),为了页面展示美观,我们通常需要进行零操作(2019-01),今天我找到一个快速转化的方式,作个记录 坚持做问题记录,加油! nowTime () { const time = new Date() console.log (time) // Fri Aug 10 2018 21:28:59 GMT+0800 (中国标准时间) // 日期格式化 const newTime = time.getFullYear() + '-' + (time.getMonth() + 1) + '...