JavaScript 基础 - Math对象和日期对象
Math
什么是MATH对象?
Math 是 JavaScript 中内置的对象,称为数学对象,这个对象下即包含了属性,也包含了许多的方法。
属性
- Math.PI,获取圆周率
// 圆周率
console.log(Math.PI);
方法
| 成员 | 功能 |
|---|---|
| PI | 获取圆周率,结果为3.141592653589793 |
| abs(x) | 获取x的绝对值,可传入普通数值或是用字符串表示的数值 |
| max() | 获取所有参数中的最大值 |
| min() | 获取所有参数中的最小值 |
| pow(base,exponent) | 获取基数(base)的指数(exponent)次幂,即:baseexponent |
| sqrt(x) | 获取x的平方根 |
| ceil(x) | 获取大于或等于x的最小整数,即向上取整(舍弃小数部分,整数部分加1 |
| floor(x) | 获取小于或等于x的最大整数,即向下取整(舍弃小数部分,整数部分不变) round(x) 获取x的四舍五入后的整数值 |
| round(x) | 获取x的四舍五入后的整数值 |
| random() | 获取大于或等于0.0且小于1.0的随机值 |
- Math.random,生成 0 到 1 间的随机数
// 0 ~ 1 之间的随机数, 包含 0 不包含 1
Math.random()
- Math.ceil,数字向上取整
// 舍弃小数部分,整数部分加1
Math.ceil(3.4)
- Math.floor,数字向下取整
// 舍弃小数部分,整数部分不变
Math.floor(4.68)
- Math.round,四舍五入取整
// 取整,四舍五入原则
Math.round(5.46539)
Math.round(4.849)
- Math.max,在一组数中找出最大的
// 找出最大值
Math.max(10, 21, 7, 24, 13)
- Math.min,在一组数中找出最小的
// 找出最小值
Math.min(24, 18, 6, 19, 21)
- Math.pow,幂方法
// 求某个数的多少次方
Math.pow(4, 2) // 求 4 的 2 次方
Math.pow(2, 3) // 求 2 的 3 次方
- Math.sqrt,平方根
// 求某数的平方根
Math.sqrt(16)
数学对象提供了比较多的方法,这里不要求强记,通过演示数学对象的使用,加深对对象的理解。
生成指定范围的随机数
/*
生成指定范围的随机数
1.表示生成大于或等于min且小于max的随机值
Math.random() * (max - min) + min;
2.表示生成0到任意数之间的随机整数
Math.floor(Math.random() * (max + 1));
3.表示生成1到任意数之间的随机整数
Math.floor(Math.random() * max + 1);
*/
代码示例:
// 案例:[10,21]随机整数
function getRandom(min, max) {
return Math.floor(Math.random() * (max - min + 1) + min)
}
console.log(getRandom(10, 20))
// 案例:随机获取颜色
function getRgb(min, max) {
var c1 = getRandom(min, max)
var c2 = getRandom(min, max)
var c3 = getRandom(min, max)
return 'rgb(' + c1 + ',' + c2 + ',' + c3 + ')'
}
console.log(getRgb(0, 255))
日期对象
什么是日期对象?
用途:
JavaScript中的日期对象用来处理日期和时间。
注意:
JavaScript中的日期对象需要使用new Date()实例化对象才能使用,Date()是日期对象的构造函数
(和Math是有区别的)
语法:
// 方式1:获取当前时间
var date1 = new Date();
console.1og(date1); // 输出: wed Apr 05 2023 20:57:12 GMT+0800(中国标准时间)
//方式2:传入年、月、日、时、分、秒(月的范围是0~11,即真实月份-1)
var date2 = new Date(2023,03,06,10,57,56);
console.log(date2); // 输出: Thu Apr 06 2023 10:57:56 GMT+0800(中国标准时间)
//方式3:用字符串表示日期和时间
var date3 = new Date('2023-04-06 10:57:56');
console. 1og(date3);
代码示例:
function getMyDate() {
var arr = ['星期天', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'];
// 获取当前时间
var date = new Date();
// console.log(date)
// // 获取当前年
// date.getFullYear()
// // 当前月份
// date.getMonth() + 1
// // 当前日期
// date.getDate()
// // 当前星期
// date.getDay()
var str = date.getFullYear() + '年' + (date.getMonth() + 1) + '月' + ate.getDate() + '日 ' + arr[date.getDay()]
return str
}
var res = getMyDate()
console.log(res)
get方法:
| 方法 | 作用 |
|---|---|
| getFullYear | 获取表示年份的4位数字,如2020 |
| getMonth | 获取月份,范围0~11(o表示一月,1表示二月,依次类推) |
| getDate | 获取月份中的某一天,范围1~31 |
| getDay | 获取星期,范围0~6(O表示星期日,1表示星期一,依次类推) |
| getHours | 获取小时数,返回0~23 |
| getMinutes | 获取分钟数,范围0~59 |
| getSeconds | 获取秒数,范围0~59 |
| getMilliseconds | 获取毫秒数,范围0~999 |
| getTime | 获取从1970-01-01 00:00:00距离Date对象所代表时间的毫秒数 |
set方法:
| 方法 | 作用 |
|---|---|
| setFullYear(value) | 设置年份 |
| setMonth | 设置月份 |
| setDate | 设置月份中的某一天 |
| setHours | 设置小时数 |
| setMinutes | 设置分钟数 |
| setSeconds | 设置秒数 |
| setMilliseconds | 设置毫秒数 |
| setTime | 通过从1970-01-01 00:00:00计时的毫秒数来设置时间 |