将时间转成中文模式
<body>
<!--
格式化时间
+ 把时间格式化成中文模式
+ ****年**月**日 下午 两点二十分十五秒
1. 准备一个数组
+ 把汉字准备好
2. 获取当前的时间节点
3. 把时间对象里面的信息整出来
4. 转汉字
4-1:年
=> 格式化年的函数
4-2:其他
5. 组装
-->
<script>
// 1. 准备一个汉字数组
var arr = ['零','一','二','三','四','五','六','七','八','九','十']
// 2. 获取时间节点
var time = new Date()
// 3. 获取时间对象里面的所有信息
var year = time.getFullYear()
var month = time.getMonth()
var date = time.getDate()
var hours = time.getHours()
var minutes = time.getMinutes()
var seconds = time.getSeconds()
var week = time.getDay()
// 准备两个函数 格式化年
function forgetYear(){
// 2021 二零二一
// 把数字拆成 四位
var a = parseInt(year/1000)
var b = parseInt(year % 1000 / 100)
var c = parseInt(year % 100 / 10)
var d = year % 10
console.log(a,b,c,d)
// 转换成中文,将四个数字当成索引从数组里拿到东西
return arr[a]+arr[b]+arr[c]+arr[d]+'年'
}
console.log(forgetYear())
// 格式化其他数字
function forgetNum(num){
// 阅读方式
// 个位: 一/二/三/四 <=10
// 十位:十一/十二/十三 <20
// 几十:二十/三十/四十
// 几十几:二十一/二十五
// 拆分数字
var a = parseInt(num/10)
var b = num % 10
// 判断数字是不是小于等于十
if(num<=10){
return arr[num]
}else if(num<20){
return '十'+arr[b]
}else if(num%10===10){
return arr[a]+'十'
}else{
return arr[a]+'十'+arr[b]
}
}
// console.log(forgetNum(3))
var str = ''
// 年
str +=forgetYear(year)
// 月
str += forgetNum(month)+'月'
// 日
str += forgetNum(date)+'日'
// 小时
str += forgetNum(hours)+'小时'
// 分钟
str += forgetNum(minutes)+'分钟'
// 秒
str += forgetNum(seconds)+'秒'
console.log(str)
</script>
</body>
中文倒计时
需要用到上一章封装的时间
<div id="diffTimes"></div>
<script>
var arr = ['零','一','二','三','四','五','六','七','八','九','十']
setInterval(function(){
var time = new Date()
var willTime = new Date(2021,2,9,18,30,00)
var diffTime=getTimeDifference(time,willTime)
var day = diffTime.day
var hours = diffTime.hours
var minutes = diffTime.minutes
var seconds = diffTime.seconds
// 格式化其他数字
function forgetNum(num){
var a = parseInt(num/10)
var b = num % 10
if(num<=10){
return arr[num]
}else if(num<20){
return '十'+arr[b]
}else if(num%10===10){
return arr[a]+'十'
}else{
return arr[a]+'十'+arr[b]
}
}
var str = ''
// 天
str += forgetNum(day)+'天'
str += forgetNum(hours)+'小时'
str += forgetNum(minutes)+'分钟'
str += forgetNum(seconds)+'秒'
// console.log(str)
diffTimes.innerHTML=str
},1000)
</script>