JS内置对象

Math对象

Math对象不是构造函数,它具有数学常数和函数的属性和方法,都是以静态成员的方式提供

跟数学相关的运算来找Math中的成员(求绝对值,取整)

Math

演示:Math.PI、Math.random()、Math.floor()/Math.ceil()、Math.round()、Math.abs() 、Math.max()

Math.PI // 圆周率
Math.random() // 生成随机数
Math.floor()/Math.ceil() // 向下取整/向上取整
Math.round() // 取整,四舍五入
Math.abs() // 绝对值
Math.max()/Math.min() // 求最大和最小值

Math.sin()/Math.cos() // 正弦/余弦
Math.power()/Math.sqrt() // 求指数次幂/求平方根

案例

  • 求10-20之间的随机数

  • 随机生成颜色RGB

  • 模拟实现max()/min()

Date对象

创建 Date 实例用来处理日期和时间。Date 对象基于1970年1月1日(世界标准时间)起的毫秒数。

// 获取当前时间,UTC世界时间,距1970年1月1日(世界标准时间)起的毫秒数
var now = new Date();
console.log(now.valueOf()); // 获取距1970年1月1日(世界标准时间)起的毫秒数

Date构造函数的参数
1. 毫秒数 1498099000356 new Date(1498099000356)
2. 日期格式字符串  '2015-5-1' new Date('2015-5-1')
3. 年、月、日……  new Date(2015, 4, 1)   // 月份从0开始

  • 获取日期的毫秒形式

var now = new Date();
// valueOf用于获取对象的原始值
console.log(date.valueOf())

// HTML5中提供的方法,有兼容性问题
var now = Date.now();

// 不支持HTML5的浏览器,可以用下面这种方式
var now = + new Date(); // 调用 Date对象的valueOf()

  • 日期格式化方法

toString() // 转换成字符串
valueOf() // 获取毫秒值
// 下面格式化日期的方法,在不同浏览器可能表现不一致,一般不用
toDateString()
toTimeString()
toLocaleDateString()
toLocaleTimeString()

  • 获取日期指定部分

getTime()  // 返回毫秒数和valueOf()结果一样,valueOf()内部调用的getTime()
getMilliseconds()
getSeconds()  // 返回0-59
getMinutes()  // 返回0-59
getHours()    // 返回0-23
getDay()      // 返回星期几 0周日   6周6
getDate()     // 返回当前月的第几天
getMonth()    // 返回月份,***从0开始***
getFullYear() //返回4位的年份 如 2016

案例

  • 写一个函数,格式化日期对象,返回yyyy-MM-dd HH:mm:ss的形式

function formatDate(d) {
 //如果date不是日期对象,返回
 if (!date instanceof Date) {
   return;
}
 var year = d.getFullYear(),
     month = d.getMonth() + 1,
     date = d.getDate(),
     hour = d.getHours(),
     minute = d.getMinutes(),
     second = d.getSeconds();
 month = month < 10 ? '0' + month : month;
 date = date < 10 ? '0' + date : date;
 hour = hour < 10 ? '0' + hour : hour;
 minute = minute < 10 ? '0' + minute:minute;
 second = second < 10 ? '0' + second:second;
 return year + '-' + month + '-' + date + ' ' + hour + ':' + minute + ':' + second;
}

  • 计算时间差,返回相差的天/时/分/秒

function getInterval(start, end) {
 var day, hour, minute, second, interval;
 interval = end - start;
 interval /= 1000;
 day = Math.round(interval / 60 /60 / 24);
 hour = Math.round(interval / 60 /60 % 24);
 minute = Math.round(interval / 60 % 60);
 second = Math.round(interval % 60);
 return {
   day: day,
   hour: hour,
   minute: minute,
   second: second
}
}

详细见:https://www.cnblogs.com/jiumen/p/11395484.html

posted @ 2020-11-21 17:48  我试试这个昵称好使不  阅读(174)  评论(0编辑  收藏  举报