js Date详解:创建日期以及日期API

什么是: 封装一个时间,提供操作时间的API


   何时: 只要存储时间,都要用Date对象
   如何: 
      创建: 4种: 
      1. 创建日期对象,并自动获得当前客户端系统时间
         var now=new Date();
      2. 创建日期对象,并封装自定义时间:    
         var date=new Date("yyyy/MM/dd hh:mm:ss");
         var date=new Date(yyyy,MM-1,dd,hh,mm,ss)
      3. 复制一个日期对象: 
         问题: 日期对象的计算都是直接修改原日期对象
                      计算后无法保留计算前的旧时间
         解决: 今后如果需要同时保留开始和结束时间时
                     都要先将开始时间复制一个副本,再用副本计算
         var date1=new Date(...);
         var date2=new Date(date1);
      4. 用毫秒数创建日期对象: 
         Date对象的原理: 
            Date对象中保存了一个巨大的毫秒数
               起始时间为: 1970年1月1日0点至今的毫秒数
         var date=new Date(ms);
         两个日期对象可相减: 得到毫秒差

日期API


   单位:  FullYear   Month     Date          Day
             Hours      Minutes   Seconds    Milliseconds
   API: 1. 每个单位都有一个对儿get/set方法
            比如: var year=date.getFullYear()//获取单位的值     
                     date.setFullYear(year)//设置单位的值
            特殊: Day没有set方法
          2. 命名: 年月日星期没有s结尾
                      时分秒毫秒都有s结尾
          3. 取值范围: 只有Date从1~31
                   不考虑FullYear, 其余都是从0开始,到进制-1结束
               Month: 0~11 总比现实中小1, 需要修正
               Date: 1~31   不用修正
               Day: 0~6      不用修正
               Hours: 0~23 不用修正
               Minutes/Seconds: 0~59 不用修正 
   日期计算: 
      1. 计算两个日期的时间差: 两日期相减,得毫秒数,再换算
      2. 对任意单位做加减: 3步: 
           1. 取分量: var d=date.getDate();
           2. 做加减: d+=60
           3. 放回去: date.setDate(d);
                强调: 所有set方法可自动调整时间进制
          其实可简写为: date.setDate(date.getDate()+60)
   转字符串: 
       date.toString() -> 当地时间的完整时间格式
       date.toLocaleString() ->当地时间的简化版格式
       date.toLocaleDateString() -> 当地时间的日期部分
       date.toLocaleTimeString() -> 当地时间的时间部分
       date.toGMTString() -> 标准时区的标准时间

   作业: 自定义format函数: 2_format.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值