javascript常用开发笔记:一个简单强大的js日期格式化方法
前言:一直没找到好用的javascript日期格式化工具,自己写了一个,方便以后复用
1、主要功能
(1)支持任意顺序的日期格式排列:yyyy=年,MM=月,dd=日,HH=时,mm=分,ss=秒,sss=毫秒
(2)支持js的Date对象和标准Long值日期格式化(例如java发送到前端的日期是一个long值)
(3)日期出现个位数自动填充0
2、方法实现
/**
*日期格式化 str:格式化字符,d:js日期对象或long值,d为空则自动获取当前日期格式化
*/
function dateFormat(str,d) {
if( checkNull(str)){ //如果格式化字符为空,返回空字符 return "";
}
if(checkNull(d)){ //如果日期为空,自动获取当前日期 d=new Date();
}else if(d.constructor!=Date){//如果参数不是一个日期对象,就认为是一个标准Long值日期d=new Date(d);
}return str.replace("yyyy",d.getFullYear()).replace("MM",fillZero(d.getMonth()+1)).replace("dd",fillZero(d.getDate())).replace("HH",fillZero( d.getHours())).replace("mm",fillZero(d.getMinutes())).replace("ss",fillZero(d.getSeconds())).replace("sss",d.getMilliseconds());
} //填充0
function fillZero(value){
if(value.toString().length<2){ return "0"+value;
}
return value;
}
//判空
function checkNull(value){
if(!value||value==null||typeof(value) == "undefined"||value==""){
return true;
}
return false;
}
3、测试demo
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>日期格式化 by eguid</title>
</head>
<body> <p>支持任意顺序日期格式排列:</p>
<p id="demo">例如:dd日MM月yyyy年 HH:mm:ss</p>
<script>
/**
*日期格式化 str:格式化字符,d:js日期对象,d为空则自动获取当前日期格式化
*/
function dateFormat(str,d) {
if( checkNull(str)){ //如果格式化字符为空,返回空字符 return "";
}
if(checkNull(d)){ //如果日期为空,自动获取当前日期 d=new Date();
}else if(d.constructor!=Date){//如果参数不是一个日期对象,就认为是一个标准Long值日期
d=new Date(d);
}return str.replace("yyyy",d.getFullYear()).replace("MM",fillZero(d.getMonth()+1)).replace("dd",fillZero(d.getDate())).replace("HH",fillZero( d.getHours())).replace("mm",fillZero(d.getMinutes())).replace("ss",fillZero(d.getSeconds())).replace("sss",d.getMilliseconds());
} //填充0
function fillZero(value){
if(value.toString().length<2){ return "0"+value;
}
return value;
}
//判空
function checkNull(value){
if(!value||value==null||typeof(value) == "undefined"||value==""){
return true;
}
return false;
} //运行日期格式化
var str = document.getElementById("demo").innerHTML; document.getElementById("demo").innerHTML =dateFormat(str);
</script> </body>
</html>
结果:
支持任意顺序日期格式排列:
例如:19日12月2016年 11:13:56:815
javascript常用开发笔记:一个简单强大的js日期格式化方法相关推荐
- 常用的JS日期格式化方法
记录一下工作中常用到的日期格式化工具方法: 大家觉得好用的可以收藏一下,避免下次想用又找不到噢 使用方法如下: //最近一个月lastMonth() {const end = new Date();c ...
- python小项目实例流程-Python小项目:快速开发出一个简单的学生管理系统
原标题:Python小项目:快速开发出一个简单的学生管理系统 本文根据实际项目中的一部分api 设计抽象出来,实例化成一个简单小例子,暂且叫作「学生管理系统」. 这个系统主要完成下面增删改查的功能: ...
- python小项目案例-Python小项目:快速开发出一个简单的学生管理系统
本文根据实际项目中的一部分api 设计抽象出来,实例化成一个简单小例子,暂且叫作「学生管理系统」. 这个系统主要完成下面增删改查的功能: 包括: 学校信息的管理 教师信息的管理 学生信息的管理 根据A ...
- python项目开发实例-Python小项目:快速开发出一个简单的学生管理系统
本文根据实际项目中的一部分api 设计抽象出来,实例化成一个简单小例子,暂且叫作「学生管理系统」. 这个系统主要完成下面增删改查的功能: 包括: 学校信息的管理 教师信息的管理 学生信息的管理 根据A ...
- (超多图)基于Android studio开发的一个简单入门小应用(超级详细!!)(建议收藏)
基于Android studio开发的一个简单入门小应用 一.前言 二.前期准备 三.开发一个小应用 五.运行应用 一.前言 在暑假期间,我学习JAVA基础,为了能早日实现自己用代码写出一个app的& ...
- php怎么做考勤行事例,PHP开发制作一个简单的活动日程表Calendar
材料取之深入PHP与JQuery开发,这本书实际上就是讲述一个活动日程表. 此文章适合从其它语言(如java,C++,python等)转到php,没有系统学习php,或者是php初学者,已经对程序有较 ...
- 如何用php做每天日程安排,PHP开发制作一个简单的活动日程表Calendar,日程表calendar...
PHP开发制作一个简单的活动日程表Calendar,日程表calendar 材料取之深入PHP与JQuery开发,这本书实际上就是讲述一个活动日程表. 此文章适合从其它语言(如java,C++,pyt ...
- python 消息队列 go_gmq: gmq是基于redis提供的特性,使用go语言开发的一个简单易用的消息队列;支持延迟任务,异步任务,超时任务,优先级任务...
1. 概述 gmq是基于redis提供的特性,使用go语言开发的一个简单易用的队列;关于redis使用特性可以参考之前本人写过一篇很简陋的文章Redis 实现队列; gmq的灵感和设计是基于有赞延迟队 ...
- LayaAir引擎开发HTML5最简单教程(面向JS开发者)
LayaAir引擎开发HTML5最简单教程(面向JS开发者) 一.总结 一句话总结:开发游戏还是得用游戏引擎来开发,其实很简单啦 切记:开发游戏还是得用游戏引擎来开发,其实很简单,引擎很多东西都帮你做 ...
最新文章
- 查看JDK的历史版本
- 如何把SAP CRM产品主数据隐藏的batch ID字段显示出来
- Kubernetes stateful set讲解以及一个基于postgreSQL的具体例子
- 中科院等发布《2019研究前沿》
- 从 Dagger 到 Hilt,谷歌为何执着于让我们用依赖注入?
- 用了Redis里面的map和set
- MultipartFile和CommonsMultipartFile的区别!
- 内存检查工具valgrind介绍、安装与使用
- 解析《富爸爸财务自由之路》
- Foxmail登录各种邮箱方法汇总
- stm32中堆、栈、flash、ROM、RAM、bss段、data段、text段、Code、Ro-data、 ZI-data、RW-data简介
- 简要比较费雪方程与剑桥方程
- 中国物流企业家谈“物流”
- threejs全景图片展示
- hydrus1d使用说明_Hydrus-1D中文说明.doc
- jitpack.io 无法访问或下载依赖库
- 未知参数休哈特matlab,一种确定某类工作的人的极限工作时间的方法
- 简易手写输入法软件的编写
- 2017百度之星初赛:B-1005. 度度熊的交易计划(最小费用流)
- JS--事件的委托(代理)--使用/教程/实例
热门文章
- 鸿蒙系统批次名单,鸿蒙系统升级机型名单有哪些?鸿蒙系统升级机型汇总
- 建模实训报告总结_建筑模型制作实训报告总结
- 浅谈流形学习(Manifold Learning)
- “华为杯”研究生数学建模竞赛2005年-【华为杯】A题:排队论模型解决出租车最佳数量预测(附获奖论文)
- 手机端访问网页自动跳转至广告页面解决办法
- 4年滴滴是这样子干掉30家竞争公司的
- C#windows窗体应用隐藏,按需要显示
- uniapp 隐藏“再按一次退出应用”的提示,将应用隐藏至后台
- Android程序员的硬通货——ASM字节码插桩
- python最短路径问题_Python调用gurobi来解决最短路径问题,python,求解