转Date对象为字符串实现函数

function formatDate(time, format = "Y-MM-dd HH:mm:ss") {
/**
格式化字符说明
Y 年 四位数 示例 2021
y 年 年数后二位 示例 21
M 月 单位数不补0 示例 1
MM 月 单位数补0 示例 01
d 日 单位数不补0 示例 2
dd 日 单位数补0 示例 02
H 小时 24小时制,单位数不补0 示例 3
HH 小时 24小时制,单位数补0 示例 03
h 小时 12小时制,单位数不补0 示例 3
hh 小时 12小时制,单位数补0 示例 03
m 分钟 单位数不补0 示例 4
mm 分钟 单位数补0 示例 04
s 秒 单位数不补0 示例 5
ss 秒 单位数补0 示例 05
*/ let date = new Date(time); let yearFull = date.getFullYear().toString();
let yearTwoDigits = yearFull.substr(2, 2);
let month = date.getMonth() + 1; //月份是从0开始的,所以要加1
let day = date.getDate();
let hour = date.getHours(); // 24小时制
let hourTwelve = hour % 12; // 12小时制
let min = date.getMinutes();
let sec = date.getSeconds();
let preArr = Array.apply(null, Array(10)).map(function(elem, index) {
return "0" + index;
}); // 创建一个长度为10的数组 格式为 00 01 02 03,用于给月份,小时,分钟等“补0” let newTime = format
.replace(/Y/g, yearFull)
.replace(/y/g, yearTwoDigits)
.replace(/MM/g, preArr[month] || month)
.replace(/M/g, month)
.replace(/dd/g, preArr[day] || day)
.replace(/d/g, day)
.replace(/HH/g, preArr[hour] || hour)
.replace(/H/g, hour)
.replace(/hh/g, preArr[hourTwelve] || hourTwelve)
.replace(/h/g, hourTwelve)
.replace(/mm/g, preArr[min] || min)
.replace(/m/g, min)
.replace(/ss/g, preArr[sec] || sec)
.replace(/s/g, sec);
return newTime;
} // 运行测试
formatDate(new Date().getTime()); // 2021-02-05 10:53:42
formatDate(new Date().getTime(), "Y年M月d日"); // 2021年2月5日
formatDate(new Date().getTime(), "y-MM-dd"); // 21-02-05 let str_datetime = "2021/02/05 09:05:05".replace(/-/g,"/");
formatDate(new Date(str_datetime).getTime(),"今天是Y/MM/dd h:m:s"); //今天是2021-02-05 09:05:05
formatDate(new Date(str_datetime).getTime(), "今天是Y/MM/dd HH:mm:ss"); //今天是2021-02-05 09:05:05

Javascript 转Date对象为字符串实现函数的更多相关文章

  1. json里的日期字符串 怎么 转换成 javascript 的 Date 对象?

    “/Date(1232035200000)/” 怎么转换成  javascript 的 Date 对象 做法:new Date(+/\d+/.exec(value)[1]); value就是json字 ...

  2. JavaScript:Date 对象

    ylbtech-JavaScript:Date 对象 1.返回顶部 Date 对象 Date 对象用于处理日期和时间. 创建 Date 对象的语法: var myDate=new Date() 注释: ...

  3. javascript操作Date对象

    Date 对象用于处理日期和时间. 创建 Date 对象的语法: var myDate=new Date() Date 对象会自动把当前日期和时间保存为其初始值. 参数形式有以下5种: new Dat ...

  4. toJSON() 方法,将 Date 对象转换为字符串,并格式化为 JSON 数据格式。

    JavaScript toJSON() 方法 定义和用法 toJSON() 方法可以将 Date 对象转换为字符串,并格式化为 JSON 数据格式. JSON 数据用同样的格式就像x ISO-8601 ...

  5. javascript中Date对象的应用——简易日历的实现

    × 目录 [1]效果 [2]HTML [3]CSS[4]JS 前面的话 简易日历作为javascript中Date对象的常见应用,用途较广泛.本文将详细说明简易日历的实现思路 效果演示 HTML说明 ...

  6. javascript中Date对象复习

    js的Date对象不怎么经常用,所以忘得差不多,复习一下 1.声明一个Date对象,默认本地当前时间 var date = new Date();//Fri Apr 28 2017 14:26:19 ...

  7. javascript中Date对象的应用

    前面的话 简易日历作为javascript中Date对象的常见应用,用途较广泛.本文将详细说明简易日历的实现思路 效果演示 HTML说明 使用type=number的两个input分别作为年和月的输入 ...

  8. JavaScript中date 对象常用方法

    Date 对象 Date 对象用于处理日期和时间. //创建 Date 对象的语法: var datetime = new Date();//Date 对象会自动把当前日期和时间保存为其初始值. co ...

  9. JavaScript的Date对象

    整理了一些JavaScript时间的对象,如下所示: toLocaleString()得到当前的年月日和时间的字符串 toLocaleTimeString() 得到当前的时间字符串 toLocaleD ...

  10. JavaScript 之 Date对象

    Date对象 Date 是一个构造函数,首先要通过 new Date() 来创建实例对象,提供实例成员.  创建 Date 实例用来处理日期和时间.Date 对象基于 1970年1月1日(世界标准时间 ...

随机推荐

  1. linux内核参数调优和Linux实例常用内核网络参数介绍与常见问题处理

    问题1 并发场景下,常常会出现一个进程最大文件句柄数不足的情况,会报如下错误: 24: Too many open files 解决办法 ulimit -a S:表示软限制,超出设定的值会告警. H ...

  2. 详解RocketMQ消息存储原理

    本文基于RocketMQ 4.6.0进行源码分析 一. 存储概要设计 RocketMQ存储的文件主要包括CommitLog文件.ConsumeQueue文件.Index文件.RocketMQ将所有to ...

  3. Dubbo SPI扩展机制源码详解(基于2.7.10)

    Dubbo SPI 一. 概述 本文主要分享 Dubbo 的拓展机制 SPI. 想要理解 Dubbo ,理解 Dubbo SPI 是非常必须的.在 Dubbo 中,提供了大量的拓展点,基于 Dubbo ...

  4. WPF基础之样式设置和模板化(三)

    IsItemsHost 属性在此示例中,一个必需的重要属性是 IsItemsHost 属性.IsItemsHost 属性用于指示在 ItemsControl(如处理项列表的 ListBox 控件)的模 ...

  5. 拼凑一个ABP VNext管理后台拼凑一个ABP VNext管理后台

    介绍# 本项目前后端分离,后端采用ABP VNext框架,前端Vue.项目地址: https://github.com/pojianbing/AuthCenter 目前包含的模块有: 身份认证管理 I ...

  6. redhat8 添加scsi类型的硬盘后开机重配虚拟机 且黑屏

    原因:因为vmware磁盘优先级里nvme类型的磁盘比scsi类型的磁盘优先级高,所以开机先启动scsi类型的磁盘 又因为scsi并不是系统盘所以不能够实现开机 解决方法: 改变vmware的磁盘优先 ...

  7. 纯css+html+js模仿elementui组件

    文件下载链接地址https://files.cnblogs.com/files/ht955/UIcomponents.zip?t=1717405975&download=true

  8. vue3 函数式组件

    今天看vue3中文文档 看到函数式组件不太理解上面写的 然后自己写了一下才理解上面的自己记录一下 先在子组件里面写上 <script> // dynameic 组件 import { h ...

  9. 对pta的总结_1

    前言 这三次pta难度在不断上升的同时,要求我们线上慕课+自主学习来了解更多的java中的各种方法,如:正则表达式 List Map等.与此同时要求我们展开尝试并熟练类的构造,类的引用,链表的基本运用 ...

  10. NET9 提供HybridCache解决分布式缓存中存在的远程链接&序列化带来的性能问题

    下面是一个标准的IDistributedCache用例: public class SomeService(IDistributedCache cache) { public async Task&l ...