Date和Math

目录

Date

创建一个时间对象

创建一个指定的时间对象

Date方法

Math

Math 对象属性

Math 对象方法


Date

在JS中使用Date对象

创建一个时间对象

如果直接使用构造函数创建一个Date对象,则会封装为当前代码执行的时间来表示一个时间

var d = new Date();
console.log(d); // Date Mon Feb 21 2022 20:26:58 GMT+0800 (中国标准时间)

创建一个指定的时间对象

需要在构造函数中传递一个表示时间的字符串作为参数

日期的格式:月/日/年 时:分:秒

d = new Date("03/01/2022 12:00:00");
console.log(d); // Date Tue Mar 01 2022 12:00:00 GMT+0800 (中国标准时间)
d = new Date("03/01/22 12:00:00"); // 不建议使用,为了避免在不同浏览器中产生歧义,尽量指定完整年份

Date方法

getDate()

获取当前日期对象是几日

var date = d.getDate();
console.log("date = " + date); // date = 1

getDay()

获取当前日期对象时周几,会返回一个0-6的值

  • 0 表示 周日
  • 1 表示 周一
  • 6 表示 周六
var day = d.getDay();
console.log("day = " + day); // day = 2

getMonth()

获取当前时间对象的月份-会返回一个0-11的值

  • 0 表示 1月
  • 1 表示 2月
  • 11 表示 12月
var month = d.getMonth();
console.log("month = " + month); // month = 2
console.log("month = " + (month + 1)); // month = 3

getFullYear()

获取当前日期对象的年份

var year = d.getFullYear();
console.log("year = " + year); // year = 2022

getTime()

获取当前日期对象的时间戳

时间戳,指的是从格林威治标准时间的1970年1月1日0时0分0秒到当前日期所花费的毫秒数

计算机底层在保存时间时使用都是时间戳

var time = d.getTime();
console.log("time = " + time); // time = 1646107200000

我们的系统是中文系统,采用的是东八区时间,有8个小时的时差

var d2 = new Date("01/01/1970 00:00:00");
var time = d2.getTime();
console.log("time = " + time); // time = -28800000
console.log("距离格林威治时间还有" + -time/1000/60/60 + "小时"); // 距离格林威治时间还有8小时

获取当前的时间戳

var currentTime = Date.now();
console.log("currentTime = " + currentTime); // currentTime = 1645448788401

Math

Math和其他的对象不同,不是一个构造函数

属于一个工具类,不用创建对象,里边封装了数学运算相关的属性和方法

Math 对象属性

console.log(Math.E); // 2.718281828459045
console.log(Math.PI); // 3.141592653589793

Math 对象方法

Math.abs()

可以用来计算一个数的绝对值

console.log(Math.abs(-1)); // 1

Math.ceil()

可以对一个数进行向上取整,小数位只有有值就自动进1

console.log(Math.ceil(1.001)); // 2
console.log(Math.ceil(1.0));   // 1

Math.floor()

可以对一个数进行向下取整,小数部分会被舍掉

console.log(Math.floor(1.999999)); // 1

Math.round()

可以对一个数进行四舍五入取整

console.log(Math.round(1.4)); // 1
console.log(Math.round(1.5)); // 2

Math.random()

可以用来生成一个0-1之间的随机数(开区间范围:(0,1))

for(var i=0 ; i<100 ; i++){
   console.log(Math.random());
}

生成一个0-10之间的随机数:Math.round(Math.random() * 10)

生成一个0-X之间的随机数:Math.round(Math.random() * X)

生成一个1-10之间的随机数:Math.round(Math.random() * 9 + 1)

生成一个X-Y之间的随机数:Math.round(Math.random() * (Y - X) + X)

Math.max()

可以获取多个数中的最大值

console.log(Math.max(3,6,7,33)); // 33

Math.min()

可以获取多个数中的最小值

console.log(Math.min(3,6,7,33)); // 3

Math.pow()

Math.pow(x,y)返回x的y次幂

console.log(Math.pow(2,10)); // 1024

Math.sqrt()

用于对一个数进行开方运算

console.log(Math.sqrt(81)); // 9


                
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值