JavaScript 内置对象 --Math 和 Date
一, Math 对象的方法
1. 求最值方法
min()
语法: Math.min(num1,num2...numN)
功能: 求一组数中的最小值.
返回值: Number.
max()
语法: Math.max(num1,num2...numN)
功能: 求一组数中的最大值.
返回值: Number.
<script>
var min=Math.min(5,-4,0,9,108,-55);
console.log(min);//-55
var min1=Math.min(5,-4,0,9,108,-55,"abc");
console.log(min1);//NaN
var max=Math.max(88,0,6,85,199);
console.log(ma);//199
</script>
2. 取整方法
ceil()
语法: Math.ceil(num)
功能: 向上取整, 即返回大于 num 的最小整数.
返回值: Number.
floor
语法: Math.floor(num)
功能: 向下取整, 返回 num 的整数部分.
返回值: Number.
round()
语法: Math.round (num)
功能: 将数值四舍五入为最接近的整数.
返回值: Number.
var num=Math.ceil(189.99);
console.log(num);//190
var num1=Math.ceil(189.09);
console.log(num1);//190
var num2=189.09;
var int1=Math.ceil(num2);//190
var int2=Math.floor(num2);//189
var int3=Math.round(num2);//189
var num3=189.69;
var int3=Math.round(num3);//190
3. 求绝对值
abs()
语法: Math.abs (num)
功能: 返回 num 的绝对值.
返回值: Number.
var nums=-55;
console.log(Math.abs(nums));//55
4. 生成随机数
random()
语法: Math.random()
功能: 返回大于等于 0 小于 1 的一个随机数.
返回值: Number.
说明:
求 n 到 m 之间的随机整数的公式:
random=Math.floor(Math.random()*(m-n+1)+n);
var random=Math.random();
console.log(random);// 每一次刷新都不一样, 小于 1 的随机数: 0.458541256325412
// 生成 x~x 之间的随机整数
function getRandom(n,m){
var choise=m-n+1;// 随机整数的个数
return Math.floor(Math.random()*choise+n);
}
var random1=getRandom(2,6);
console.log(random1);//5 3 2...
二, date 对象
1. 创建日期对象的方法
语法: new Date();
功能: 创建一个日期时间对象
返回值: 不传参的情况下, 返回当前的日期时间对象.
说明:
如果想根据特定的日期和时间创建日期对象, 必须传入表示该日期的毫秒数或者是一组用逗号隔开的表示年月日时分秒的参数.
2. 获取日期时间的方法
1,getFullYear(): 返回 4 位数的年份
2,getMonth(): 返回日期中的月份, 返回值为 0-11
3,getDate(): 返回月份中的天数
4,getDay(): 返回星期, 返回值为 0-6
5,getHours(): 返回小时
6,getMinutes(): 返回分
7,getSeconds(): 返回秒
8,getTime(): 返回表示日期的毫秒数
<script>
// 创建一个日期时间对象
var weeks=["日","一","二","三","四","五","六"],
today=new Date();
console.log(today);//Thu Jan 04 2018 15:43:49 GMT+0800 (中国标准时间)
var today=new Date(),
year=today.getFullYear(),
month=today.getMonth()+1,
date=today.getDate(),
week=today.getDay(),
hours=today.getHours(),
minutes=today.getMinutes(),
seconds=today.getSeconds(),
times=today.getTime(),
time=year+'年'+month+'月'+date+'日'+hours+'时'
+minutes+'分'+seconds+'秒 星期'+weeks[week];
console.log("现在是:"+time); // 现在是: 2018 年 1 月 4 日 15 时 51 分 41 秒 星期四
console.log(times);// 从 1970 年 1 月 1 日 00:00:00 开始到现在时间的毫秒数: 1515052409017
</script>
3. 设置日期时间的方法
1,setFullYear(year): 设置 4 位数的年份
2,setMonth(mon): 设置日期中的月份, 从 0 开始, 0 表示 1 月
3,setDate(): 设置日期
4,setDay(): 设置星期, 从 0 开始, 0 表示星期日
5,setHours(): 设置小时
6,setMinutes(): 设置分
7,setSeconds(): 设置秒
8,setTime(): 以毫秒数设置日期, 会改变整个日期
// 创建一个日期时间对象
var today=new Date();
today.setFullYear(2015);
console.log(today.getFullYear());//2015
today.setMonth(8);
console.log(today.getMonth());//8
today.setMonth(13);
console.log(today.getMonth());//1
1.png
案例: 50 天之后是星期几
<script>
var today=new Date();
// 第一种做法
//today.setDate(today.getDate()+50);
//console.log(today.getDay());
//5
// 第二种做法
var weeks=["日","一","二","三","四","五","六"];
var year=today.getFullYear();
var month=today.getMonth();
var day=today.getDate();
// 创建一个目标日期对象
var temp = new Date(year,month,day+50);
console.log("50 天后的今天是:"+temp.getFullYear()+'-'+(temp.getMonth()+1)+'-'+temp.getDate()
+'-'+'星期'+weeks[temp.getDay()]);
//50 天后的今天是: 2018-2-23 - 星期五
</script>
来源: http://www.jianshu.com/p/513d662f4b83