首页 > 编程语言 >node_06自定义一个格式化时间模块并使用

node_06自定义一个格式化时间模块并使用

时间:2022-11-12 09:22:33浏览次数:38  
标签:node const 自定义 padZero xx 模块 格式 06 dt

在上一篇博客中,我们知道了自定义模块的定义以及如何暴露出去让其他模块使用。

在日常的开发过程中我们经常会遇到一些处理时间格式的问题,下面我们来自定义一个处理时间的模块。

我们计划将时间格式化为:xxxx-xx-xx- xx:xx:xx,所以第一步我们需要定义一个补零函数。在小于9时给月、日、时、分、秒补上0占位。

//定义补零函数
function padZero(n) {     n > 9 ? n=n :n= '0' + n     return n }

  

第二步就是定义格式化时间的具体方法,思路:用一个形参来接受要格式化的时间,然后使用new Date将传入的时间转换为通用时间格式,再使用Date类里封装好的函数来获取对应的年月日时分秒,对这些进行补零最终得到我们所需要的时间格式

function dateFormat(dtStr) {
    //定义时间格式
    const dt = new Date(dtStr)
    const y = padZero(dt.getFullYear())
    const m = padZero(dt.getMonth() + 1)
    const d = padZero(dt.getDate())
    const hh = padZero(dt.getHours())
    const mm = padZero(dt.getMinutes())
    const ss = padZero(dt.getSeconds())

    return `${y}-${m}-${d} ${hh}:${mm}:${ss}`
}

 最后一步就是将其暴露出去供其他模块使用

 

function dateFormat(dtStr) {
    //定义时间格式
    const dt = new Date(dtStr)
    const y = padZero(dt.getFullYear())
    const m = padZero(dt.getMonth() + 1)
    const d = padZero(dt.getDate())
    const hh = padZero(dt.getHours())
    const mm = padZero(dt.getMinutes())
    const ss = padZero(dt.getSeconds())

    return `${y}-${m}-${d} ${hh}:${mm}:${ss}`
}
//定义补零函数
function padZero(n) {     n > 9 ? n=n :n= '0' + n     return n }

module.exports ={dateFormat} 

  下面我们来引入该模块并使用

 

 

 

 

 可以看到时间格式已经转换成xxxx-xx-xx xx:xx:xx格式

标签:node,const,自定义,padZero,xx,模块,格式,06,dt
From: https://www.cnblogs.com/SadicZhou/p/16882690.html

相关文章

  • Node.js fs API docs All In One
    Node.jsfsAPIdocsAllInOneModules:node:moduleAPICJS//module.cjs//InaCommonJSmoduleconstbuiltin=require('node:module').builtinModules;......
  • 自定义的Qt给统计图添加颜色样例控件
    本文主要是给博文“自定义的Qt折线图控件”的图表添加颜色样例。之所以分开叙述是因为本文也是自定义控件,它不仅可以给折线图添加,还可以给其他类型的图表(柱状图、饼形图等,......
  • hadoop的datanode多磁盘空间不统一…
    很多网上转载解决如下:修改hdfs-site.xml:添加<property><name>dfs.datanode.du.reserved</name><value>214748364800</value><description>Reservedspaceinby......
  • LeetCode 406.根据身高重建队列
    首先根据身高从小到大排序如果身高相等那么根据第二个值降序排序classSolution{public:vector<vector<int>>reconstructQueue(vector<vector<int>>&people){......
  • 插入MySQL报错‘pymysql.err.DataError: (1406, "Data too long for column 'url' at
    错误重现:插入MySQL报错‘pymysql.err.DataError:(1406,"Datatoolongforcolumn'url'atrow1")’解决方法:在插入MySQL的字符太多,此时将MySQL的模式改为非严格模......
  • nuxtjs3 学习踩坑1 自定义路由的配置
    刚安装的nuxt框架搭配vue3使用路由的时候除了按照约定的规则配置路由以外,还可以使用基于vue-router写法的路由文件去做配置,需要如图所示的位置编写文件:其中这样的路由要......
  • meven怎么自定义配置
    今天导入一个es模块要求用7.4.2但是里面有个文件一直是6.4.3 然后我去maven仓库下载还是不行,,最后我直接依赖锁定  强制锁定  成功......
  • 自定义的Qt折线图控件
    可以在QWidget内绘制折线图。做的比较简单,因为从写到调试只用了大概1天时间。不太智能,但是可以应对一般的场景。在VS2015和Qt5.9上测试可以使用。当然,由于测试不到位里面可......
  • vue element 表单自定义效验 及 单独效验某个值
    主要功能 (表单自定义效验 && 单独效验某个值)表单自定义效验exportdefault{data(){//定义效验constvalidatePersonCharge=(rul......
  • 软件工程 张雯雯 223201062202
    2.1实验过程2.1.1实验代码给出博客园截图和网址,并附上github的代码地址。GitHub代码地址: 2.1.2实验过程(1) 本人角色自己在本次结对项目中所担任角色,以及结对伙......