0
点赞
收藏
分享

微信扫一扫

时间对象( 一种复杂数据类型 )

迪莉娅1979 2022-04-02 阅读 55
javascript

 时间对象  : JS 内的一个复杂数据类型, 专门用来记录时间信息的数据类型

创建时间对象   var time = new Date(     )     单位毫秒

创建指定时间节点的时间对象

表示的是 毫秒, 从 格林威治时间 --------向后顺延的毫秒数

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<script>
var noTime=new Date( )
console.log(noTime)
</script>

  第一个表示 年 /  第二个表示 月(注意: 0 表示 1 月, 11 表示 12 月) + 第三个表示 日   + 第四个表示 时   + 第五个表示 分 + 第六个表示 秒   + 第七个表示 毫秒+ 每一个都会自动进位  

时间表示格式:    现在可以直接进行计算

     'YYYY-MM-DD HH:mm:ss'

      'YYYY/MM/DD HH:mm:ss'

 注意: 月份位置 1 表示 1 月, 12 表示 12 月,,,年月日 和 时分秒 之间有一个 空格

            获取                              设置

                getFullYear()         setFullYear()

                getMonth()           setMonth()

                getDate()           setDate()

                getHours()          setHours()

                getMinutes()        setMinutes()

                getSeconds()        setSeconds()

                getMilliseconds()   setMilliseconds()

                getDay()            -  获取星期天  0---6  数字  可用索引值

                getTime()           setTime()     时间戳形式

如下:获取当前时间段的时间值

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<script>
var noTime=new Date( )
console.log(noTime)
// Thu Mar 31 2022 19:57:57 GMT+0800 (中国标准时间)
//获取 get
var year= new Date( ).getFullYear( )
console.log( year)
var month= new Date( ).getMonth( )
console.log( month)
var date= new Date( ).getDate( )
console.log( date)
var hours= new Date( ).getHours( )
console.log( hours)
var minutes= new Date( ).getMinutes( )
console.log(minutes)
var second= new Date( ).getSeconds( )
console.log(second)
var Milliseconds= new Date( ).getMilliseconds( )
console.log(Milliseconds)

</script>


</body>
</html>

格式化时间

<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>

<body>
<script>
// 时间格式化
// xxxx 年 xx 月 xx 日 上午/下午 xx 时 xx 分 xx 秒 星期x
// 准备一个时间对象
var time = new Date()
console.log(time)

// 1. 拿到时间对象内所有相关的信息
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 day = time.getDay()

// 2-1. 月份信息, 因为 0 表示 1 月, 11 表示 12 月, 应该给月份信息位置 +1(0.....11,索引般从0开始)
month++
var str = hours <= 12 ? '上午' : '下午'
// 因为是按照 12 点区分的, 所以小时如果大于 12 , 要减去 12 12小时制
if (hours > 12) hours -= 12

// 你拿到的 day: 0 1 2 3 4 5 6
// 应该对应的信息: 日 一 二 三 四 五 六
// 完全可以拿 day 这个数字当做索引来看待
var s = '日一二三四五六'
var week = '星期' + s[day]
var res = `${ year }${ month }${ date }${ str } ${ hours }${ minutes }${ seconds }${ week }`
console.log(res)
</script>
</body>

</html>

..时间查计算

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>

<body>
<script>
function diffTime(t1, t2) {
// 1. 求出两个时间节点之间相差的 毫秒数
var sub = Math.ceil(Math.abs(t1 - t2) / 1000)
// 以前, 我们需要使用 getTime() 方法获取到时间戳相减
// var sub = Math.abs(t1.getTime() - t2.getTime())
// 2. 换算
var day = parseInt(sub / (60 * 60 * 24))
var hours = parseInt(sub % (60 * 60 * 24) / (60 * 60))
var minutes = parseInt(sub % (60 * 60) / 60)
var seconds = sub % 60

// 3. 组装返回值
var obj = {
day: day,
hours: hours,
minutes: minutes,
seconds: seconds
}
// 4. 把准备好的返回值返回
return obj }
var res = diffTime(new Date(), new Date('2022-6-2 18:00:00'))
console.log(res)
</script>
</body>

</html>

///倒计时显示

举报

相关推荐

0 条评论