JavaScript笔记(十)-----内置对象(数学对象与日期对象)

目录

一、Math数学对象

1.Math.PI;   圆周率 π

2.Math.max()最大值

3.Math.min()最小值

        4.Math.ceil()    向上取整  ,  返回值>=参数

        5.Math.floor()  向下取整      返回值<=参数

        6.Math.round() 四舍五入取整

7.Math.abs()    返回数的绝对值

8.Math.pow(x,y)  x的y次幂

        9.Math.random()随机数

1.四舍五入取随机数

2.向上取整的随机数

3.向下取整的随机数

4.[5-15]之间的随机数

公式

三、日期对象

1.没有输入参数,就会返回系统的当前时间

  2.参数常用写法:

日期对象           

今天是2022年4月10日 星期日

返回当前的时分秒,08:08:08

获得Date总的毫秒数(时间戳),不是当前的毫秒数,而是距离1970.01.01总的毫秒数


JavaScript提供了多个内置对象:Math, Date , Array, String等

一、Math数学对象

数学对象不是一个构造函数,不需要声明,直接使用里面的属性和方法即可

1.Math.PI;   圆周率 π

一个属性

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

2.Math.max()最大值

Math.max(value1,value2,value3...),里面要写一组数值,返回给定的一组数组中的最大值

如果给的参数中至少有一个参数无法转换成数字,会返回NaN

如果一个参数也没有,会返回-Infinity

			console.log(Math.max(1,2,3,5,88,99,0));   //99
			console.log(Math.max(-120,-1,-34));       //-1
			console.log(Math.max(1,2,3,5,88,99,0,'html课程'));  //NaN
			console.log(Math.max());    //-Infinity


3.Math.min()最小值

			console.log(Math.min(1,2,3,5,88,99,0));   //0
			console.log(Math.min(-120,-1,-34));       //-120


4.Math.ceil()    向上取整  ,  返回值>=参数

			console.log(Math.ceil(9.1));      //10
			console.log(Math.ceil(9.9));      //10
			console.log(Math.ceil(-2.189));   //-2

5.Math.floor()  向下取整      返回值<=参数

			console.log(Math.floor(9.1));      //9
			console.log(Math.floor(9.9));      //9
			console.log(Math.floor(-2.189));   //-3

6.Math.round() 四舍五入取整

四舍五入里,其他数字都是四舍五入,但是0.5是往大的数取

			console.log(Math.round(9.1));      //9
			console.log(Math.round(9.9));      //10
			console.log(Math.round(-1.234));   //-1
			console.log(Math.round(-1.5));   //-1

7.Math.abs()    返回数的绝对值

			console.log(Math.abs(1));       //1
			console.log(Math.abs(-1));      //1
			console.log(Math.abs('-1'));    //1  隐式转换  会把字符串  -1 转换为数字型

8.Math.pow(x,y)  x的y次幂

			console.log(Math.pow(2,3))       //8
			console.log(Math.pow(2,0))       //1
			console.log(Math.pow(2,-1))       //0.5

9.Math.random()随机数

默认0-1之间的数 

 举栗子:

1.四舍五入取随机数

			console.log(Math.round(Math.random()*10))   //[0-10]

2.向上取整的随机数

			console.log(Math.ceil(Math.random()*10))   //(0-10]

3.向下取整的随机数

			console.log(Math.floor(Math.random()*10))   //[0-10)

4.[5-15]之间的随机数

			console.log(Math.round(Math.random()*10+5))  
			console.log(Math.floor(Math.random()*11+5))  

公式

 [m-n]  m和n之间的随机整数,并包含m,n

            Math.round(Math.random() * (m - n) + n);
            Math.floor(Math.random() * (m - n + 1) + n);


 拓展:

随机颜色

rgb是从0-255

			var red = Math.floor(Math.random() * 256);
			var blue = Math.floor(Math.random() * 256);
			var green = Math.floor(Math.random() * 256);

上述代码为[0-256)

举个栗子

		

三、日期对象

日期对象  是一个构造函数,要使用new调用创建日期对象

1.没有输入参数,就会返回系统的当前时间

var myDate = new Date();
console.log(myDate);		//Sun Apr 10 2022 15:47:02 GMT+0800 (中国标准时间)

  2.参数常用写法:

数字型    2019,10,01     (月份会比输入的大一)

var myDate = new Date(2019,10,01);
console.log(myDate);		//Fri Nov 01 2019 00:00:00 GMT+0800 (中国标准时间)

字符串型        '2019-10-01 8:8:8'

var myDate = new Date('2019-10-01 8:8:8');
console.log(myDate);	//Tue Oct 01 2019 08:08:08 GMT+0800 (中国标准时间)

日期本地对象

以字符串形式显示

			var myDate = new Date();
			console.log(myDate.toLocaleDateString());    //2022/4/11
			console.log(myDate.toLocaleTimeString());    //10:43:50
			console.log(myDate.toLocaleString());    //2022/4/11 10:44:06

日期对象            var myDate = new Date();

    myDate.getFullYear() 年份(数字类型)
    myDate.getMonth() 月份(0-11)1月是0,2月是1
    myDate.getMonth()+1 正常月份
    myDate.getDate() 日期
    myDate.getDay() 星期(0-6)星期日是0
    myDate.getHours() 小时(24小时制)
    myDate.getMinutes() 分钟
    myDate.getSeconds()
    myDate.getMilliseconds() 毫秒(1s=1000ms)
    myDate.getTime() 毫秒(距离1970.1.1的毫秒数)

栗子1:

今天是2022年4月10日 星期日

			var myDate = new Date();
			var year = myDate.getFullYear();
			var month = myDate.getMonth() + 1;
			var date = myDate.getDate();
			var arr=['星期日','星期一','星期二','星期三','星期四','星期五','星期六',]
			var day = myDate.getDay();
			console.log(`今天是${year}年${month}月${date}日 ${arr[day]}`);

 栗子2:

返回当前的时分秒,08:08:08

			function getTime() {
				var time = new Date();
				var h = time.getHours();
				h = h < 10 ? '0' + h : h
				var m = time.getMinutes(); 
				m = m < 10 ? '0' + m : m
				var s = time.getSeconds();
				s = s < 10 ? '0' + s : s
				var ms = time.getMilliseconds();
				return h + ':' + m + ':' + s + ':' + ms
			}
			console.log(getTime());

栗子3:

获得Date总的毫秒数(时间戳),不是当前的毫秒数,而是距离1970.01.01总的毫秒数

有4种·方法

			var myDate = new Date();
			//1.通过valueOf()
			console.log(myDate.valueOf());
			//2.通过getTime()
			console.log(myDate.getTime());
			//3.+new Date() 返回总的毫秒数
			var date =+new Date();
			console.log(date);
			//4.Date.now()
			console.log(Date.now());

你可能感兴趣的:(JavaScript,javascript,css3,大前端,前端,html5)