• moment函数转换后的时间不正确,带有 “sa“等奇怪的字母


    目录

    一、问题

    二、解决方法

     三、总结


    一、问题

    1.使用moment函数转换当前日期的格式为  '年-月-日',结果转换出来竟然有一些 字母!!!

    迷之自信,这不就是这样吗?给了转换格式,给了转换时间,字母就出现这种奇葩的情况

    1)代码如下

    1. let dateFormate= 'yyyy-MM-dd';
    2. const showDate=this.moment(new Date()).format(dateFormate);
    3. console.log("showDate",showDate)

    2)结果如图1-1所示。竟然输出了 2022-09-Sa 

    图 1-1 错误输出

    二、解决方法

    1.仔细看了moment函数的使用方法format() | Moment.js 文档,才发现我把 转换格式的参数写错了。上面'yyyy-MM-dd'里面的‘dd'应该改成大写的'DD'

    这个主要是因为 element-ui的时间组件里面 天 格式化时都用的是 小写 'dd'   ⊙﹏⊙,然后我就这样写了。

    moment.js中 'dd'表示取星期,图1-1 中的 'Sa'是 'saturday'星期六的缩写

    1)代码如下

    1. let dateFormate=this.dateFormate : 'yyyy-MM-DD';
    2. const showDate=this.moment(new Date()).format(dateFormate);
    3. console.log("showDate",showDate)

    2)结果如图2-1所示,正确了

    图 2-2 正确转换

    2.测试了一下其他 转换参数 大小写写错后,也会有格式各样的奇葩错误,月写错了月大于>12,实际上去了分钟,小时小写时转成了12小时制的小时表示。

    1)代码如下

    1. let dateFormate= 'yyyy-MM-DD';
    2. const showDate=this.moment(new Date()).format(dateFormate);
    3. console.log("showDate",showDate)
    4. let dateFormate1= 'yyyy-mm-DD';//错误
    5. const showDate1=this.moment(new Date()).format(dateFormate1);
    6. console.log("showDate1",showDate1)
    7. let dateFormate2= 'HH';
    8. const showDate2=this.moment(new Date()).format(dateFormate2);
    9. console.log("showDate2",showDate2)
    10. let dateFormate3='hh';//错误
    11. const showDate3=this.moment(new Date()).format(dateFormate3);
    12. console.log("showDate3",showDate3)

    2)结果如图2-3所示

     三、总结

    1.moment.js格式化出现莫名其妙的结果可能是因为 格式化字符串中的 大小写 写错了moment.js格式化正确方式 可以参考官方文档 format() | Moment.js 文档

    2.还有不同的库,使用的时间格式可能是不一样的。如:element-ui使用 小写的 dd 来表示 天,而moment.js使用大写的 DD来表示天,小写的 dd表示取日期对应的星期的 缩写。

    3.所以,使用格式化函数时如果发现转换后的值 奇奇怪怪的,一定要 去找到库对应的文档,仔细对应检查是否有有大小写或其他格式化字符与文档描述不一致的情况

    /*

    希望对你有帮助!

    如有错误,欢迎指正!非常感谢!

    感谢oxl提前采坑 0--0

    */

  • 相关阅读:
    11.目标分割
    fastdds库架构
    Linux 查找文件(find命令/locate命令)
    Java并发编程吐血1个月总结最全面的100道面试题!!!
    使用docker-compose 部署 MySQL8.0
    windows查找指定端口程序,终止程序
    1.4 编写简易ShellCode弹窗
    抓包整理外篇fiddler———— 会话栏与过滤器[二]
    数据可视化复习 第二章
    海缆探测仪TSS350(三)
  • 原文地址:https://blog.csdn.net/qq_45327886/article/details/126908497