JavaScript 基础

113 阅读4分钟

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(20230306105756);
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计时的毫秒数来设置时间