Math对象
- Math对象的作用是:执行普通的算术任务
- Math对象是ECMAScript提供的一个全局对象,它主要封装了一些常用的数字函数和常数
- Math对象中的成员都是静态属性和静态方法,因此Math对象没有构造函数,也不需要创建它的实例(instance),直接使用Math的属性和方法即可。
var m = new Math(); //错误使用属性/方法的语法:var x = Math.PI;var y = Math.sqrt(16);
Math对象无需在使用这个对象之前对它进行定义
Math对象的属性
Math对象的方法
var a = 10;b = 5;console.log(Math.pow(a,b));console.log(Math.sqrt(4.0))console.log(Math.abs(-8.0));console.log(Math.ceil(10.1));console.log(Math.round(10.8));console.log(Math.floor(10.8));console.log(Math.exp(2));console.log(Math.max(10.8,10.0));
结果如下:
三角函数
随机数
- Math对象提供了一个生成随机数的函数 random() 返回0-1之间的随机数
var max = 100;var min = 70;num = parseInt(Math.random()*(max-min)+min);console.log(num);
举例:生成随机颜色
<!DOCTYPE html><html><head><title>随机颜色</title><meta charset=\"utf-8\"></head><body><script>function rc(){var result = \'#\';for(var i =0;i<6;i++){var num = parseInt(Math.random()*16);// 颜色是十六进制 将得到的结果转换成字符串形式的十六进制// 再与‘#’拼接 组成颜色result += num.toString(16);}document.body.style.background = result;return result;}setInterval(rc,2000)</script></body></html>
Date对象
- Date对象用于对日期和时间进行存储和计算
//使用指定的年与日[时分秒]进行初始化var d1 = new Date(2016,4,1);var d2 = new Date(2015,4,1,13,18,18);//初始化为系统时间var d3 = new Date();var d4 = new Date;var d5 = Date(); //构建一个string,值为当前系统时间var d6 = new Date(0);var d7 = new Date(1000*3600*24*365);console.log(d7);
获取时间信息
可以使用下述方法获取Date对象中的时间信息
- getDate() 返回Date对象日期部分数值(1-31)
- getDay() 返回Date对象星期部分的数值(0-6)
- getFullYear() 返回Date对象年份部分的实际数值
- getHours() 返回Date对象小时部分的数值(0-23)
- getMinutes() 返回Date对象分钟部分的数值(0-59)
- getMilliseconds() 返回Date对象“毫秒”部分的数值(0-999)
- getMonth() 返回Date对象月份部分的数值(0-11)
- getSeconds() 返回Date对象秒部分的数值(0-59)
- getTime() 返回Date对象与UTC时间1970年1月1日午夜之间相差的毫秒数
- getTimezoneOffset() 返回本地时间与格林威治标准时间(GMT)的分钟差
<script>//使用指定的年月日[时分秒]进行初始化var d1 = new Date(2020,8,5);var d2 = new Date(2020,8,5,13,56,22);console.log(d1);console.log(d2);//初始化为系统时间var d3 = new Date();console.log(d3.getDay());console.log(d3.getFullYear());console.log(d3.getMonth());console.log(d3.getHours());console.log(d3.getMinutes());console.log(d3.getSeconds());console.log(d3.getMilliseconds());console.log(d3.getTime());console.log(d3.getTimezoneOffset());</script>
结果如下:
修改时间信息
可以使用如下方法修改Date对象中的时间信息
- setDate() 设置Date对象中日期部分的数值(1-31)
- setFullYear() 设置Date对象中年份部分的实际数值
- setHours() 设置Date对象中小时部分的数值
- setMilliseconds() 设置Date对象中毫秒部分的数值
- setMinutes() 设置Date对象中分钟部分的数值
- setMonth() 设置Date对象中月份部分的数值
- setSeconds() 设置Date对象中秒部分的数值
- setTime() 以毫秒值设置Date对象
时间格式转换
Date对象可以使用如下方式进行格式化
- toDateString() 返回Date对象日期部分(年月日)的字符串形式
- toGMTString() 基于本地时间格式,返回Date对象日期部分(年月日)的字符串形式
- toLocaleDateString() 基于本地时间格式,返回Date对象的字符串形式
- toLocaleTImeString() 基于本地时间格式,返回Date对象实践部分(时分秒)的字符串形式
- toString() 返回Date对象的字符串形式
- toTimeString() 返回Date对象实践部分的字符串形式
- toUTCString 基于UTC时间格式,返回Date对象的字符串形式
Number对象
Number对象表示数值数据和数字常数,主要用于对数字进行指定格式的输出
//构造新的Number对象——引用类型的变量var num1 = new Number(5);var num2 = new Number(\"1.5\");var num3 = new Number();var num4 = new Number(\"hello\");var num5 = new Number(\"123abc\");//将数据转化为Number数据类型——值类型的变量var num6 = Number(5);var num7 = Number(\"1.5\");var num8 = Number();var num9 = Number(\"hello\");var num10 = Number(\"123abc\");
Number对象属性和方法
Number对象具有如下静态常量属性
- MAX_VALUE JS可表示的最大数值
- MIN_VALUE JS可表示的最小数值
- NaN 表示非数字值
- NEGATIVE_INFINITY 负无穷大,溢出时返回该值(小于Number.MIN_VALUE时)
- POSITIVE_INFINITY 正无穷大,溢出时返回该值(大于Number.MAX_VALUE时)
- toExponential(x) 把对象的值转换为指数计数法
- toFixed(x) 把数字转换为字符串,结果的小数点后有指定位数的数字。
- toPrecision() 把数字格式化为具有指定有效位数的字符串
- toString() 把数字抓换为指定进制表示的字符串
Boolean对象
Boolean对象表示一个布尔值对象(true或false)
//构造新的Boolean对象——引用类型对象var b1 = new Boolean();var b2 = new Boolean(false);var b3 = new Boolean(0)var b4 = new Boolean(null);var b5 = new Boolean(undefined);var b6 = new Boolean(NaN);var b7 = new Boolean(\"\");var b8 = new Boolean(0.0);