js笔记11(Math对象&Date对象)

一、Math

        专门用于数学计算的API,不需要创建,由浏览器 js解释器创建

        1、取整:

        上取整:var new=Math.ceil(num);//小数不管是几整数都会入一位,小数位数超过15位则失效

        下取整:var new=Math.floor(num);//不管小数是几,都会省略小数

        四舍五入取整:var new=Math.round(num);//只根据第一位小数,来四舍五入,最后只能是整数。

        2、乘方和开方

        乘方:var new=Math.pow(底数,幂);//代替8*8*8*8*8

        开方:var new=Math.sqrt(num);//只能开平方

不用toFixed方法保留小数位数和四舍五入:

function round(num,d){//num传入的数字,d是保留的位数
				//先拿着数字*10的d次方
				num*=Math.pow(10,d);
				//四舍五入取整
				num=Math.round(num);
				//拿着数字/10的d次方
				num/=Math.pow(10,d);
				//返回结果
				return num;
			}
console.log(round(3.1415926,3));//输出的是3.142

        3、最大值&最小值

        var new=Math.max(字符串);var new=Math.min(字符串);

        数组用:var new=Math.max.apply(Math.arr);

        apply可以去借用这个方法给数组使用,apply会将数组打散为单个元素

        4、绝对值:将负数转为整数

        Math.abs(num);可以用这个负数*1,一样的效果

        5、随机数

        Mmath.random();在0-1之间得到一个随机数,可能取到0,但是取不到1,解决:

        parseInt(Math.random()*(max-min+1)+min)

二、Date日期对象

        1、创建方式:

        创建当前时间:var new=new Date();

        创建自定义时间:var new=new Date("年/月/日 时:分:秒")

        创建自定义时间2:var new=new Date(年,月,日,时,分,秒)//这个方法月是从0开始的

        复制时间:var new1=new Date(new);//因为日期的所有API都会直接修改原日期

        毫秒数:var new Date(毫秒数),

日期的底层是一个毫秒数,可以用两个时间相减,得到是一个毫秒差

        2、API

          年月日星期:FullYear Month Date Day
          时分秒毫秒:Hours Minutes Seconds Milliseconds

        每一个时间都可以用get获取到,set除了Day不能用,其他都能用来设置时间,Day是一天天推算过来的,并且日期都会自动进制

        取值范围:
                 FullYear:当前年份数字
                 Month:0-11
                 Date:1-31
                 Day:0-6,0代表就是星期天
                 Hours:0-23
                 Minutes、Seconds:0-59

        3、格式化转为字符串:

                var str=date.toLocaleString();//转了字符串就可以用字符串的API,这个问题具有兼容性问题

        

        btn1.onclick=function(){
            //创建日期
            var new1= new Date("1998/02/01 08:01:02")
            function gsh(date){
                console.log(typeof( date))
                //获取到日期的所有内容
                var y=date.getFullYear(),
                //月份是从0到11,所以需要加1
                m=date.getMonth()+1,
                d=date.getDate(),
                h=date.getHours(),
                f=date.getMinutes(),
                s=date.getSeconds();
                //将他们拼接起来
                console.log(y+"年"+m+"月"+d+"日"+" "+h+"时"+f+"分"+s+"秒")
            }
            gsh(new1);
        }

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值