简介
介绍:JavaScript内部提供的对象,包含各种属性和方法给开发者调用
Math内置对象
介绍:Math对象是JavaScript提供的一个数学对象
**作用:**提供了一系列做数学运算的方法
语法:Math.方法()
Math对象包含的属性有:
- PI :获取圆周率
Math对象包含的方法有:
- random:随机生成0-1之间的数(包含0不包括1)
- ceil:向上取整
- floor:向下取整
- max:找最大数
- min:找最小数
- pow:幂运算(几次方运算)
- abs:绝对值
需求一:如何生成0-10的随机数呢?
Math.floor(Math.random() * (10 + 1))
需求二:如何生成5-10的随机数?
Math.floor(Math.random() * (5 + 1)) + 5
需求三:如何生成任意两个数之间的随机数
Math.floor(Math.random() * (M - N + 1)) + N
function getRandom(N, M) {
return Math.floor(Math.random() * (M - N + 1)) + N
}
console.log(getRandom(4, 8)) //输出结果为4~8之间任意一个整数,包括4也包括8
注意:==M和N必须大写==,用这种方法可以取到这两个数之间任意一个数,包括这两个数
日期对象
作用:可以得到当前系统的时间
语法:const data = new Date()
1.获取当前时间:
const day = new Date()
2.获取指定时间:
const date = new Date('2018-5-4')
console.log(date)
日期对象的使用:
获得日期对象
const date = new Date()
// 使用里面的方法
console.log(date.getFullYear())
console.log(date.getMonth() + 1) // 月份要 + 1
console.log(date.getDate())
console.log(date.getDay()) // 星期几
-----------------------------------------------------------------
我要根据日期 Day() 0 ~ 6 返回的是 星期一
const arr = ['星期天', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六']
// const date = new Date()
console.log(arr[new Date().getDay()])
注意:必须先声明日期对象,才能使用日期对象
| 单词 | 作用 | 说明 |
|---|---|---|
| getFullYear() | 获得年份 | 获取四位年份 |
| getMonth() | 获得月份 | 取值为 0 ~ 11 |
| getDate() | 获取月份中的每一天 | 不同月份取值也不相同 |
| getDay() | 获取星期 | 取值为 0 ~ 6 |
| getHours() | 获取小时 | 取值为 0 ~ 23 |
| getMinutes() | 获取分钟 | 取值为 0 ~ 59 |
| getSeconds() | 获取秒 | 取值为 0 ~ 59 |
时间戳
介绍:是指1970年01月01日00时00分00秒起至现在的==毫秒数==,它是一种特殊的计量时间的方式
三种方式获取时间戳:
-
使用
getTime()方法 -
简写
+new Date() -
使用
Date.now()无需实例化,但是只能得到当前的时间戳, 而前面两种可以返回指定时间的时间戳
1. getTime() 只能得到 当前的时间戳,而且必须得 先声明日期对象
const date = new Date()
console.log(date.getTime())
-------------------------------------------------------------------------------------------------
2. +new Date() 可以得到 将来的时间戳,也可以得到当前的时间戳,且 不需要声明日期对象
console.log(+new Date('2022-9-8'))
-------------------------------------------------------------------------------------------------
3. Date.now() 可以得到当前的时间戳,但是也得不到将来的时间戳 不需要声明日期对象
console.log(Date.now());
使用场景:倒计时
倒计时算法:
- 将来的时间戳 - 现在的时间戳 = 剩余时间毫秒数
- 剩余时间毫秒数 转换为 剩余时间的 年月日时分秒 就是 倒计时时间
- 比如 将来时间戳 2000ms - 现在时间戳 1000ms = 1000ms
- 1000ms 转换为就是 0小时0分1秒
倒计时转换公式:
d = parseInt(总秒数/ 60/60 /24); // 计算天数
h = parseInt(总秒数/ 60/60 %24) // 计算小时
m = parseInt(总秒数 /60 %60 ); // 计算分数
s = parseInt(总秒数%60); // 计算当前秒数