今天给大家分享一个我自己做的数字时钟转汉字时钟的方法,不足之处,还望多多指点。
<body>
<div id = "d1"></div>
<script>
d1.innerHTML = times();
d1.style.color = cc();
setInterval(function(){
d1.innerHTML = times();
d1.style.color = cc();
}, 1000)
function a(y){
var arr = ['零','一','二','三','四','五','六','七','八','九'];
var a1 = parseInt(y / 1000);
var a2 = parseInt((y % 1000) / 100);
var a3 = parseInt((y % 100) / 10);
var a4 = y % 10 ;
return `${arr[a1]}${arr[a2]}${arr[a3]}${arr[a4]}`
}
function b(time){
var arr1 = ['零','一','二','三','四','五','六','七','八','九','十'];
if(time <= 10){
return arr1[time];
}else if(time % 10 == 0){
var b1 = time / 10;
return `${arr1[b1]}十`;
}else if(time > 10 && time < 20){
var b2 = parseInt(time % 10);
return `十${arr1[b2]}`;
}else {
var b3 = parseInt(time / 10);
var b4 = time % 10;
return `${arr1[b3]}十${arr1[b4]}`;
}
}
function times(){
var d = new Date();
var y1 = d.getFullYear();
var m = d.getMonth() + 1;
var r = d.getDate();
var w = d.getDay();
var h = d.getHours();
var m1 = d.getMinutes();
var s = d.getSeconds();
if(m1<10){
m1 = `零${b(m1)}`
}else
{
m1 = b(m1)
}
if(s<10){
s = `零${b(s)}`
}else{
s = b(s)
}
var arr3 = ['日','一','二','三','四','五','六'];
return `现在时间是${a(y1)}年,${b(m)}月,${b(r)}日,星期${arr3[w]},${b(h)}时,${m1}分,${s}秒`
}
function cc(){
var c =parseInt(Math.random()*256);
var c1 =parseInt(Math.random()*256);
var c2 =parseInt(Math.random()*256);
return `rgb(${c},${c1},${c2})`;
}
</script>
</body>