JS(第十二课)JS中的日期对象

简介: JS(第十二课)JS中的日期对象

JS中的日期对象

Date 对象 的作用

Date 对象用于处理日期与时间。

创建 Date 对象: new Date()

以下四种方法同样可以创建 Date 对象:创建对象语法如下

var d = new Date();
var d = new Date(milliseconds);
var d = new Date(dateString);
var d = new Date(year, month, day, hours, minutes, seconds, milliseconds);

 <script>
     // 属性
     // Sat Oct 22 2022 20: 33: 43 GMT + 0800(中国标准时间)
     // Tue Nov 22 2022 00: 00: 00 GMT + 0800(中国标准时间)
     // Tue Nov 22 2022 20: 26: 30 GMT + 0800(中国标准时间)
     // Mon Jun 20 2022 22: 34: 23 GMT + 0800(中国标准时间)
     // Sat Oct 22 2022 22: 34: 23 GMT + 0800(中国标准时间)
     // 2022
     // 日期调用的对象信息内容
     // Sat Oct 22 2022 20: 33: 43 GMT + 0800(中国标准时间)
     var NewDate = new Date();
     document.write(NewDate + "<br>");
     // Tue Nov 22 2022 00: 00: 00 GMT + 0800(中国标准时间)
     var NewDate1 = new Date(2022, 10, 22);
     document.write(NewDate1 + "<br>")
     //Tue Nov 22 2022 20: 26: 30 GMT + 0800(中国标准时间)
     var NewDate2 = new Date(2022, 10, 22, 20, 26, 30);
     document.write(NewDate2 + "<br>")
     // Mon Jun 20 2022 22: 34: 23 GMT + 0800(中国标准时间)
     var NewDate3 = new Date("Jun 20,2022 22:34:23")
     document.write(NewDate3 + "<br>")
     // Sat Oct 22 2022 22: 34: 23 GMT + 0800(中国标准时间)
     var NewDate4 = new Date("2022/10/22/ 22:34:23")
     document.write(NewDate4 + "<br>")
     // 2022
     var NewDate5 = new Date();
     // 增加属性
     Date.prototype.mark = NewDate5.getFullYear()
     document.write(NewDate5.mark + "<br>")
     if (NewDate5.constructor == Date) {
         // 2022
         // 日期调用的对象信息内容
         document.write("日期调用的对象信息内容" + "<br>")
     }
 </script>

Date 对象属性

属性 描述
constructor 返回对创建此对象的 Date 函数的引用。
prototype 使您有能力向对象添加属性和方法。
  var NewDate5 = new Date();
     // 增加属性
     Date.prototype.mark = NewDate5.getFullYear()
     document.write(NewDate5.mark + "<br>")
     if (NewDate5.constructor == Date) {
         // 2022
         // 日期调用的对象信息内容
         document.write("日期调用的对象信息内容" + "<br>")
     }

 <script>
     // 16个方式
     var myDate = new Date();
     var a3 = myDate.getDate();
     var a4 = myDate.getDay();
     var a2 = myDate.getMonth();
     var a1 = myDate.getFullYear();
     var a = myDate.getYear();
     var a6 = myDate.getHours();
     var a7 = myDate.getMinutes();
     var a8 = myDate.getSeconds();
     var a9 = myDate.getMilliseconds();
     var a13 = myDate.getTime();
     var a14 = myDate.toTimeString();
     var a15 = myDate.toDateString();
     var a16 = myDate.toGMTString();
     var a17 = myDate.toUTCString();
     var a10 = myDate.toLocaleDateString();
     var a11 = myDate.toISOString();
     var a12 = myDate.toGMTString();
     // 设置值
     document.write(a1 + "<br>");
     document.write(a2 + "<br>");
     document.write(a3 + "<br>");
     document.write(a4 + "<br>");
     // document.write(a5 + "<br>");
     document.write(a6 + "<br>");
     document.write(a7 + "<br>");
     document.write(a8 + "<br>");
     document.write(a9 + "<br>");
     document.write(a10 + "<br>");
     document.write(a11 + "<br>");
     document.write(a12 + "<br>");
     document.write(a13 + "<br>");
     document.write(a14 + "<br>");
     document.write(a15 + "<br>");
     document.write(a16 + "<br>");
     document.write(a17 + "<br>");
 </script>

运行结果:

Date 对象方法 总结在官网上都可以找到

image.png

image.png

image.png

image.png

案例实操一  2022年倒计时

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>2021年倒计时</title>
    <style type="text/css">
      .rty{
        color: red;
      }
      .tyu{
        color: #C71585;
      }
    </style>
  </head>
  <body>
    <h1 id="res"></h1>
    <script type="text/javascript" class="rty">
      function test(year,month,day){
        var end =new Date(year,month-1,day);
        var leftTime=end.getTime()-Date.now();
        var day  =Math.floor(leftTime/1000/60/60/24);
        var h =Math.floor(leftTime/1000/60/60%24);
        var  m =Math.floor(leftTime/1000/60%60);
        var s =Math.floor(leftTime/1000/60);
        var str="距2022年结束还有"+day+"天"+h+"小时"+m+"分钟"+s+"秒";
      res.innerHTML=str 
      }
      setInterval("test(2022,12,31)",1000);
    </script>
  </body>
</html>

案例二实操 计算明年元旦的天数

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=sc, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        var date1=new Date()
        var three=date1.getFullYear()+1;
        date1.setFullYear(three);
        date1.setMonth(0);
        date1.setDate(1);
        var date2=new Date();
        var date3=date1.getTime()-date2.getTime();
        var days=Math.ceil(date3/(24*60*60*10000));
        console.log(days)
    </script>
</body>
</html>

内容通俗易懂不需要过多的解释

相关文章
|
1月前
|
JavaScript 前端开发
如何在 JavaScript 中使用 __proto__ 实现对象的继承?
使用`__proto__`实现对象继承时需要注意原型链的完整性和属性方法的正确继承,避免出现意外的行为和错误。同时,在现代JavaScript中,也可以使用`class`和`extends`关键字来实现更简洁和直观的继承语法,但理解基于`__proto__`的继承方式对于深入理解JavaScript的面向对象编程和原型链机制仍然具有重要意义。
|
1月前
|
Web App开发 JavaScript 前端开发
如何确保 Math 对象的方法在不同的 JavaScript 环境中具有一致的精度?
【10月更文挑战第29天】通过遵循标准和最佳实践、采用固定精度计算、进行全面的测试与验证、避免隐式类型转换以及持续关注和更新等方法,可以在很大程度上确保Math对象的方法在不同的JavaScript环境中具有一致的精度,从而提高代码的可靠性和可移植性。
|
1月前
|
JSON 前端开发 JavaScript
JavaScript中对象的数据拷贝
本文介绍了JavaScript中对象数据拷贝的问题及解决方案。作者首先解释了对象赋值时地址共享导致的值同步变化现象,随后提供了五种解决方法:手动复制、`Object.assign`、扩展运算符、`JSON.stringify`与`JSON.parse`组合以及自定义深拷贝函数。每种方法都有其适用场景和局限性,文章最后鼓励读者关注作者以获取更多前端知识分享。
20 1
JavaScript中对象的数据拷贝
|
1月前
|
JavaScript 前端开发 图形学
JavaScript 中 Math 对象常用方法
【10月更文挑战第29天】JavaScript中的Math对象提供了丰富多样的数学方法,涵盖了基本数学运算、幂运算、开方、随机数生成、极值获取以及三角函数等多个方面,为各种数学相关的计算和处理提供了强大的支持,是JavaScript编程中不可或缺的一部分。
|
1月前
|
JavaScript 前端开发 搜索推荐
Moment.js、Day.js、Miment,日期时间库怎么选?
【10月更文挑战第29天】如果你需要一个功能强大、插件丰富的日期时间库,并且对性能要求不是特别苛刻,Moment.js是一个不错的选择;如果你追求极致的轻量级和高性能,那么Day.js可能更适合你;而如果你有一些特定的日期时间处理需求,并且希望在性能和功能之间取得平衡,Miment也是可以考虑的。
|
2月前
|
存储 JavaScript 前端开发
JavaScript 对象的概念
JavaScript 对象的概念
49 4
|
2月前
|
缓存 JavaScript 前端开发
JavaScript中数组、对象等循环遍历的常用方法介绍(二)
JavaScript中数组、对象等循环遍历的常用方法介绍(二)
52 1
|
2月前
|
存储 JavaScript 前端开发
js中函数、方法、对象的区别
js中函数、方法、对象的区别
23 2
|
2月前
|
JavaScript 前端开发 Unix
Node.js 全局对象
10月更文挑战第5天
39 2
|
2月前
|
JavaScript 前端开发 大数据
在JavaScript中,Object.assign()方法或展开语法(...)来合并对象,Object.freeze()方法来冻结对象,防止对象被修改
在JavaScript中,Object.assign()方法或展开语法(...)来合并对象,Object.freeze()方法来冻结对象,防止对象被修改
40 0