JavaScript-入门第三周学习笔记2

目录

一、Math对象

二、Date:日期对象

        1、创建(四种)

        2、操作:


一、Math对象

        专门提供了数学计算的API
        强调:不需要创建,直接使用

        属性:Math.PI === 3.1415926我们不需要自己创建保存这个数字,浏览器自带

        API:
            1、取整:3种
               ① 上取整:超过一点点,就取下一个整数     

var num=Math.ceil(num);//小数位数不能超过15位


               ② 下取整:无论超过多少,都会省略掉小数部分
        

var num=Math.floor(num);


               ③ 四舍五入取整:
        

var num=Math.round(num);

       以上三个都是垃圾:都是在取整,只能取整
       取整的方式:以上三个 + *parseInt(str去掉单位) + *num.toFixed(d);
       个人最推荐*num.toFixed(d):优点:可以四舍五入保留指定的小数位数
                         缺点:结果是一个字符串,建议搭配上一个parseFloat

        笔试题:不允许用toFixed的情况下,自己封装一个函数,实现toFixed的功能并且最后返回的是一个数字:
              看用户要保留几位小数,我们就拿着那个数字*10的几次方,使用Math.round四舍五入取整,最后/10的几次方
            function sswr(num,d){
                num*=Math.pow(10,d);
                num=Math.round(num);
                num/=Math.pow(10,d);
                return num.toString();
            }

            2、乘方和开方
                    乘方:Math.pow(底数,幂); - 简化连乘的写法
                    开方:Math.sqrt(num); - 只能开平方

            3、最大值和最小值:
                    var 最大/最小的=Math.max/min(a,b,c,d,e,....);
                问题:本身不支持数组参数
                解决:固定用法:var 最大/最小的=Math.max/min.apply(Math,arr);
            apply其中一个作用是可以将数组打散为单个元素

            4、绝对值:把负数转为正数
                Math.abs(-1);//1

            5、随机数:

                Math.random(); //在0-1之间取出一个随机小数 - 只要以后网站中某一块既有随机的功能一定需要用到随机数方法
        可能取到0,但是不可能取到1,意味着取不到最大值
        公式:parseInt(Math.random()*(max-min+1)+min); 


二、Date:日期对象

        1、创建(四种)

                ① 创建一个当前日期时间
                var now=new Date();

                ② 创建一个自定义时间:
                var birth=new Date("yyyy/MM/dd hh:mm:ss");

                ③ 创建一个自定义时间:
                var birth=new Date(yyyy,MM-1,dd,hh,mm,ss);//修改月份,从0开始的,0->1月

                ④ 复制一个日期:
                日期的所有的API都是直接修改原日期的,无法获得修改之前的日期
                解决办法:在执行API之前先进行赋值,然后再操作复制后的日期
                var end=new Date(start);

        2、操作:

                ① 两个日期对象之间可以相减,得到一个毫秒差,换算出自己想要的某一部分 - 日期的本质其实就是保存的一个毫秒数
                创建的最后一个方式:var date=new Date(毫秒数);

              ②API:
                         分量:时间的单位
                         年日月星期:FullYear Month Date Day
                         时分秒毫秒:Hours Minutes Seconds Milliseconds
                         每一个分量都有一堆getXXX/setXXX
                        其中getXXX负责获取某一个分量的值
                        其中setXXX负责设置某一个分量的值
                特殊:
                          (1)取值范围:
                                    FullYear:当前年份的数字
                                    Month:0~11
                                    Date:1~31
                                    Day:0~6,外国人的眼里星期天才是一周的第一天
                                    Hours:0~23
                                    Minutes,Seconds:0~59

                          (2)Day,没有set方法

            ③ 如果希望对某个分量进行加减计算
                 date.setXXX(date.getXXX()+/-n)

            ④ 格式化日期为字符串:
                date.toLocaleString();//本地日期格式(具有兼容性问题,解决:自定义format方法)

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值