/*
* 作者: 杨志永
* 日期: 2012-8-15
* 版本: V1.0
* 邮箱: ljy520zhiyong@163.com
* QQ: 929168233
*
*/
//获取一个当前日期对象
var date = new Date();
//设置两个个数组,用来与阿拉伯数字对应的中文数字,类似一种Map的关系
var chineseNumberArray = ["零", "一", "二", "三", "四", "五", "六", "七", "八", "九", "十"];
var normalNumberArray = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9"];
//构造一个MyDate的对象,也可以看成Java中的类,在用时请调用 : var mydate = new MyDate(); 然后就可以调用里的方法了
function MyDate()
{
//获取年份,是一个4位数字组成的年份,比如:2012
this.myYears = function(){
return (date.getFullYear());
};
//获取中文数字的年份,比如:二零一二
this.myChinesYear = function(){
var numbers = this.myYears().toString();
var str = new String();
str += fromNumberToChinese(numbers.substring(0, 1));
str += fromNumberToChinese(numbers.substring(1, 2));
str += fromNumberToChinese(numbers.substring(2, 3));
str += fromNumberToChinese(numbers.substring(3, 4));
return str;
};
//获取月分,范围:1-12
this.myMonths = function(){
return (date.getMonth() + 1);
};
//获取月分的中文数字,比如:十一
this.myChineseMonths = function(){
var numbers = this.myMonths().toString();
var str = new String();
if (this.myMonths() >= 10 )
{
str += chineseNumberArray[10];
if ( numbers.substring(1, 2) == "0")
{
str += "";
}
else
{
str += fromNumberToChinese(numbers.substring(1, 2));
}
}
else
{
str += fromNumberToChinese(numbers.substring(0, 1));
}
return str;
};
//获取日期,范围:1-31
this.myDays = function(){
return (date.getDate());
};
//获取日期的中文数字
this.myChineseDays = function(){
var numbers = this.myDays().toString();
var str = new String();
if (this.myDays() >= 10 )
{
if ( numbers.substring(0, 1) == "1")
{
str += chineseNumberArray[10];
}
else if ( numbers.substring(0, 1) == "2" )
{
str += chineseNumberArray[2] + chineseNumberArray[10];
}
else
{
str += chineseNumberArray[3] + chineseNumberArray[10];
}
if ( numbers.substring(1, 2) == "0" )
{
str += "";
}
else
{
str += fromNumberToChinese(numbers.substring(1, 2));
}
}
else
{
str += fromNumberToChinese(numbers.substring(0, 1));
}
return str;
};
//获取“时"的数字,范围:1-23
this.my24Hours = function(){
return (date.getHours());
};
//获取”时“的中文数字,比如:二十三
this.myChinese24hours = function(){
var numbers = this.my24Hours().toString();
var str = new String();
if (this.my24Hours() >= 10 )
{
if ( numbers.substring(0, 1) == "1")
{
str += chineseNumberArray[10];
}
else
{
str += chineseNumberArray[2] + chineseNumberArray[10];
}
if ( numbers.substring(1, 2) == "0" )
{
str += "";
}
else
{
str += fromNumberToChinese(numbers.substring(1, 2));
}
}
else
{
str += fromNumberToChinese(numbers.substring(0, 1));
}
return str;
};
//这个方法返回的格式为:【下午1】 或【上午8】
this.my12Hours = function(){
if (date.getHours() > 12 )
{
return ( "下午" + date.getHours() % 12 );
}
else
{
return ( "上午" + date.getHours());
}
};
//获取分钟数
this.myMinutes = function(){
return (date.getMinutes());
};
//获取中文的分钟数
this.myChineseMinutes = function(){
var numbers = this.myMinutes().toString();
var str = new String();
if (this.myMinutes() >= 10 )
{
if ( numbers.substring(0, 1) == "1")
{
str += chineseNumberArray[10];
}
else if ( numbers.substring(0, 1) == "2" )
{
str += chineseNumberArray[2] + chineseNumberArray[10];
}
else if ( numbers.substring(0, 1) == "3" )
{
str += chineseNumberArray[3] + chineseNumberArray[10];
}
else if ( numbers.substring(0, 1) == "4" )
{
str += chineseNumberArray[4] + chineseNumberArray[10];
}
else if ( numbers.substring(0, 1) == "5" )
{
str += chineseNumberArray[5] + chineseNumberArray[10];
}
if ( numbers.substring(1, 2) == "0" )
{
str += "";
}
else
{
str += fromNumberToChinese(numbers.substring(1, 2));
}
}
else
{
str += fromNumberToChinese(numbers.substring(0, 1));
}
return str;
};
// 获取秒数
this.mySeconds = function(){
return (date.getSeconds());
};
//获取中文的秒数
this.myChineseSeconds = function(){
var numbers = this.mySeconds().toString();
var str = new String();
if (this.mySeconds() >= 10 )
{
if ( numbers.substring(0, 1) == "1")
{
str += chineseNumberArray[10];
}
else if ( numbers.substring(0, 1) == "2" )
{
str += chineseNumberArray[2] + chinesenumbersArray[10];
}
else if ( numbers.substring(0, 1) == "3" )
{
str += chineseNumberArray[3] + chineseNumberArray[10];
}
else if ( numbers.substring(0, 1) == "4" )
{
str += chineseNumberArray[4] + chineseNumberArray[10];
}
else if ( numbers.substring(0, 1) == "5" )
{
str += chineseNumberArray[5] + chineseNumberArray[10];
}
if ( numbers.substring(1, 2) == "0" )
{
str += "";
}
else
{
str += fromNumberToChinese(numbers.substring(1, 2));
}
}
else
{
str += fromNumberToChinese(numbers.substring(0, 1));
}
return str;
};
//这个方法返回的是:xxxx年xx月xx日 xx时xx分xx秒,xx是阿拉伯数字的方式
this.myDefaultFormatDate = function(){
var str = new String();
str += this.myYears()+"年";
str += this.myMonths()+"月"
str += this.myDays()+"日 "
str += this.my24Hours()+"时"
str += this.myMinutes()+"分"
str += this.mySeconds()+"秒"
return str;
};
//这个方法返回的是 xxxx年xx月xx日 xx时xx分xx秒,xx是中文数字的方式
this.myChineseFormatDate = function(){
var str = new String();
str += this.myChinesYear()+"年";
str += this.myChineseMonths()+"月"
str += this.myChineseDays()+"日 "
str += this.myChinese24hours()+"时"
str += this.myChineseMinutes()+"分"
str += this.myChineseSeconds()+"秒"
return str;
};
}
//这个方法是将一个数字作为参数,然后返回它的中文格式的数字,注意,只是一位数的数字。
function fromNumberToChinese(numbers)
{
for (var i=0; i<normalNumberArray.length; i++)
{
if (numbers == normalNumberArray[i])
{
return chineseNumberArray[i];
}
}
}
我的JavaScript日期库
最新推荐文章于 2024-06-01 21:31:37 发布