简单封装JavaScript Date对象操作

1、主要是封装了JavaScript中Date对象的操作:

新增了format方法,根据传进的时间格式返回相应的时间字符串。

* yyyy: 表示年
* MM:  表示月
* dd:  表示天
* HH:   表示小时
* mm:  表示分钟
* ss:  表示秒
* ww:  表示星期(中文)
* we:  表示星期(英文)

/**
* 根据当前的日期,返回星期
* ww:表示中文
* we:表示英文
*/
Date.prototype.getWeekDay = function(language){
	var weekdayName;
	switch(this.getDay()){           
		case 0 : 
			if (language != undefined && language != "" && language == "zh") {
				weekdayName = "星期日";
			} else {
				weekdayName = "Sunday";
			}
			break;
		case 1 : 
			if (language != undefined && language != "" && language == "zh") {
				weekdayName = "星期一";
			} else {
				weekdayName = "Monday";
			}
			break;           
		case 2 : 
			if (language != undefined && language != "" && language == "zh") {
				weekdayName = "星期二";
			} else {
				weekdayName = "Tuesday";
			}
			break;           
		case 3 : 
			if (language != undefined && language != "" && language == "zh") {
				weekdayName = "星期三";
			} else {
				weekdayName = "Wednesday";
			}
			break;
		case 4 : 
			if (language != undefined && language != "" && language == "zh") {
				weekdayName = "星期四";
			} else {
				weekdayName = "Thursday";
			}
			break;
		case 5 : 
			if (language != undefined && language != "" && language == "zh") {
				weekdayName = "星期五";
			} else {
				weekdayName = "Friday";
			}
			break;
		case 6 : 
			if (language != undefined && language != "" && language == "zh") {
				weekdayName = "星期六";
			} else {
				weekdayName = "Saturday";
			}
			break;
	}
	return weekdayName;
};

/**
* 格式化获得的时间数字
* 0----00
* 1----01
* 2----02
*/
Date.prototype.formatNumber = function(value){
	if (value >= 0 && value < 10) {
		value = "0" + value;
	}
	return value;
};

/**
* 返回指定字符格式的时间字符串
* @param format 返回的格式
* yyyy: 表示年
* MM:  表示月
* dd:  表示天
* HH:   表示小时
* mm:  表示分钟
* ss:  表示秒
* ww:  表示星期(中文)
* we:  表示星期(英文)
*/
Date.prototype.format =  function(format){
		try{
			// 年、月、日
			var year = this.getYear();
			var month = this.getMonth()+1;
			var day = this.getDate();
			// 时、分、秒
			var hour = this.getHours();       
			var minute = this.getMinutes();       
			var second = this.getSeconds();
			
			// yyyy-MM-dd HH:mm:ss
			if (/yyyy/.test(format)) {
				format = format.replace(/yyyy/, year);
			}
			if (/MM/.test(format)) {
				format = format.replace(/MM/, this.formatNumber(month));
			}
			if (/dd/.test(format)) {
				format = format.replace(/dd/, this.formatNumber(day));
			}
			if (/HH/.test(format)) {
				format = format.replace(/HH/, this.formatNumber(hour));
			}
			if (/mm/.test(format)) {
				format = format.replace(/mm/, this.formatNumber(minute));
			}
			if (/ss/.test(format)) {
				format = format.replace(/ss/, this.formatNumber(second));
			}
			if (/ww/.test(format)) {
				format = format.replace(/ww/, this.getWeekDay("zh"));
			}
			if (/we/.test(format)) {
				format = format.replace(/we/, this.getWeekDay("en"));
			}
		}catch(e){
			alert(e.name + ": " + e.message);
		}
		return format;
};


2、相应的在Html中调用

 

<html>
<head>
<script src="dateclass.js"></script>
</head>
<body>
<div id="time"></div>
<script>
var ds = new Date();
alert(ds.format("yyyy-MM-dd HH:mm:ss we"));

alert(ds.format("yyyy年MM月dd日  HH时mm分ss秒  ww"));
</script>
</body>
</html>


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值