js格式化日期

// 目前只支持 yyyy mm dd
	function formatDate(date,format) {
		var date = new Date(date);
		var year = date.getFullYear();
		var month = date.getMonth();
		var month1 = month + 1;
		var day = date.getDate();
		var weekDay = date.getDay();
		return format.replace(/yyyy/g, year)
					 .replace(/yy/g, (year + ‘‘).substring(2))
					 .replace(/mm/g, month1 < 10 ? ‘0‘ + month1 : month1)
					 .replace(/m/g, month1)
					 .replace(/dd/g, day < 10 ? ‘0‘ + day : day)
					 .replace(/d/g, day);
	}

	// 目前只支持 yyyy mm dd
	function parseDate(dateStr,format){
		// parse year 
		var year = null;
		var yearPattern = /y{2,4}/g
		var yearMatches = yearPattern.exec(format);

		if(yearMatches!=null){
			var yearMatch = yearMatches[0];
			var yearIndex = format.indexOf(yearMatch);
			year = dateStr.substr(yearIndex,yearMatch.length);
		}

		// parse month
		var month = null;
		var monthPattern = /m{1,2}/g
		var monthMatches = monthPattern.exec(format);

		if(monthMatches!=null){
			var monthMatch = monthMatches[0];
			var monthIndex = format.indexOf(monthMatch);
			month = dateStr.substr(monthIndex,monthMatch.length);
		}

		// parse date
		var date = null;
		var datePattern = /d{1,2}/g
		var dateMatches = datePattern.exec(format);

		if(dateMatches!=null){
			var dateMatch = dateMatches[0];
			var dateIndex = format.indexOf(dateMatch);
			date = dateStr.substr(dateIndex,dateMatch.length);
		}

		var d = new Date();

		d.setFullYear(parseInt(year));
		d.setMonth(parseInt(month)-1);
		d.setDate(parseInt(date));
		return d;
	}
时间: 2024-11-13 10:15:47

js格式化日期的相关文章

js格式化日期yyyyMMdd

先来一个土方法: <script>function getyyyyMMdd(){ var d = new Date(); var curr_date = d.getDate(); var curr_month = d.getMonth() + 1; var curr_year = d.getFullYear(); String(curr_month).length < 2 ? (curr_month = "0" + curr_month): curr_month; S

js格式化日期、计算时间差

var startTime ="20170501" var endTime = "20170430" var pattern = /(\d{4})(\d{2})(\d{2})/; var startTime_f = startTime.replace(pattern, '$1-$2-$3') var endTime_f = endTime.replace(pattern, '$1-$2-$3') //转化后的时间格式 startTime_f="2017-0

JS 格式化日期

<script>var d = new Date(new Date().getTime()); alert(d.getFullYear()+""+(d.getMonth()+1)+""+d.getDate());</script> ============================================ <script type="text/javascript">// 对Date的扩展,将 D

js处理日期【转】

日期加减: function test(){ var DateObj = new Date(); var AddDayNumber = 2; // 给日期加两天 DateObj.setDate(DateObj.getDate() + AddDayNumber); var dates=DateObj.toLocaleDateString(); } js格式化日期:(源自——脚本之家:http://www.jb51.net/article/22657.htm) Date.prototype.form

js 格式化时间日期函数小结

下面是脚本之家为大家整理的一些格式化时间日期的函数代码,需要的朋友可以参考下. 代码如下: Date.prototype.format = function(format){ var o = { "M+" : this.getMonth()+1, //month "d+" : this.getDate(), //day "h+" : this.getHours(), //hour "m+" : this.getMinutes(

JS格式化JSON后的日期

最近在做微信小程序 写了个WCF服务,返回实体中有DateTime类型字段 结果序列化后日期变成了 /Date(1494524134000+0800)\ 这种格式 不能正常显示了 但也不能为了这个吧所有服务的DateTime字段都改成String类型 于是找了一个JS的扩展方法来格式化日期 function ChangeDateFormat(jsondate) { jsondate = jsondate.replace("/Date(", "").replace(&

js实现日期格式化

<!DOCTYPE html><html><head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <title></title> <link rel="stylesheet" href=""> <

js中日期的格式化

有些时候,js中日期显示出来是 yyyy/MM/dd 这种格式,但是我需要yyyy-MM-dd格式的 简单粗暴的直接replace总是不太好,或者通过Date对象的相关方法拼接起来,也还是有些粗暴 要是可以格式化就好了, 在网上收集了一些资料,经过修改调试,完成可用,OK,以下的代码: (1)首先需要扩展日期Data的格式化方法 //扩展日期格式化方法 Date.prototype.parseStr = function (format) { var YYYY = this.getFullYea

js中格式化日期

Date.prototype.Format = function (fmt) { //author: meizz var o = { "M+": this.getMonth() + 1, //月份 "d+": this.getDate(), //日 "h+": this.getHours(), //小时 "m+": this.getMinutes(), //分 "s+": this.getSeconds()