JavaScript基础06——Math对象和日期对象
内置对象-Math:
Math对象用于执行 数学任务,Math 不像 Date 和 String 那样是对象的类,因此没有构造函数Math()。无需创建,直接把Math当成对象使用,就可以调用其所有的方法和属性。
Math对象的静态属性:
Math.E:常数e。 Math.LN2:2 的自然对数。 Math.LN10:10 的自然对数。 Math.LOG2E:以 2 为底的e的对数。 Math.LOG10E:以 10 为底的e的对数。 Math.PI:常数π。 Math.SQRT1_2:0.5 的平方根。 Math.SQRT2:2 的平方根。
Math.E // 2.718281828459045 Math.LN2 // 0.6931471805599453 Math.LN10 // 2.302585092994046 Math.LOG2E // 1.4426950408889634 Math.LOG10E // 0.4342944819032518 Math.PI // 3.141592653589793 Math.SQRT1_2 // 0.7071067811865476 Math.SQRT2 // 1.4142135623730951 需要注意的是,这些属性是只读的,不能修改。
Math对象的静态方法:
Math.round(3.6); //四舍五入 Math.random(); //返回一个大于等于0到小于1的随机数 Math.max(a,b); //返回较大的值 Math.min(a,b); //返回较小的值 Math.abs(num); //返回绝对值 Math.ceil(3.6); //向上取整 Math.floor(3.6); //向下取整 Math.pow(x,y); //x的y次方 Math.sqrt(num); //开平方 Math.sin(x); //x的正弦值,返回值在-1到1之间 Math.cos(x); //x的余弦值,返回值在-1到1之间 sin和cos的x为弧度值,而非角度,弧度计算公式:2 * Math.PI / 360 * 角度
生成范围随机数:
Math.round( Math.random() * (max-min) + min );
Date对象:
创建一个日期对象 var d = new Date(); 从日期对象获取信息 console.log(d.getFullYear()); //获取年 console.log(d.getMonth()); //获取月,注意月份是从0开始 console.log(d.getDate()); //获取日 console.log(d.getDay()); //获取周 console.log(d.getHours()); //获取小时 console.log(d.getMinutes()); //获取分钟 console.log(d.getSeconds()); //获取秒数 console.log(d.getMilliseconds());//获取毫秒 时间戳 console.log(d.getTime()); //获取从1970年1月1日至今的毫秒 console.log(d) //返回本地时间,包含年月日星期时分秒 设置日期: 1.粗野模式,简单粗暴,但是会清零时分秒 var d = new Date("2008/8/8"); 2.复杂模式 var d = new Date(); d.setFullYear(2009); //设置年 d.setMonth(6); //设置月,超过11,累加年 d.setDate(27); //设置日,超过最大日期,累加月 d.setHours(40); //设置小时,超过24,累加天 d.setMinutes(40); //设置分钟,超过60,累加小时 d.setSeconds(40); //设置秒,超过60,累加分钟 d.setMilliseconds(40); //设置毫秒,超过1000,累加秒 d.setTime(10000) //设置从1970年1月1日过去了多少毫秒 console.log(d) //返回更改后的年月日 时分秒 注意set系列的返回值 console.log(d.setFullYear(2009)); //返回从1970年1月1日,到当前设置的时间的毫秒数
延时器和计时器
延时器:setTimeout(function(){ console.log(1); },100) 语法:setTimeout(函数或者代码串,指定的时间(毫秒)); 在指定的毫秒数后只执行一次函数或代码。 清除延迟器:clearTimeout(); 定时器:setInterval(function(){ console.log(1); },100) 语法:setInterval(函数或者代码串,指定的时间(毫秒)); 按照指定的周期(毫秒)不断的执行函数或者是代码串。 清除定时器:clearInterval();