完全掌握JavaScript的Date对象

本篇文章给大家带来了关于javascript的相关知识,其中主要介绍了关于date对象的相关问题,date 对象是一个构造函数,所以我们必须经过对象实例化,即 new 过之后才可以使用,下面一起来看一下,希望对大家有帮助。

完全掌握JavaScript的Date对象

【相关推荐:javascript视频教程、web前端】

接下来说明 JS 第二类常见的内置对象 —— Date 对象

Date 对象和 Math 对象不同,Math 对象不是构造函数,可以直接使用,而 Date 对象是一个构造函数,所以我们必须经过对象实例化,即 new 过之后才可以使用,Date 对象多用于处理开发中的时间和日期方面的问题。

立即学习“Java免费学习笔记(深入)”;

Date 对象实例化:

var date=new Date();

登录后复制

Date 对象实例化时可以有参数也可以没有参数,没有参数输出的就是当前系统当时的的标准时间,有参数的话我们可以输出想要展现的时间

一:无参数的实例化

没有参数实例化后会展现出当前系统当时的时间和日期

var date=new Date();  //没有参数console.log(date);  //会输出当前时间

登录后复制

完全掌握JavaScript的Date对象

二:有参数的实例化

有参数的实例化分为两种,分别是 数字型 和 字符串型 ,以下分别对两种类型举例说明

1.数字型参数的实例化:

var date=new Date(2021,1,18);  //数字型参数console.log(date);

登录后复制

完全掌握JavaScript的Date对象

 可以看到我们输入的参数是1月,但输出的结果是Feb(2月),数字型的输出会比我们输入的月份大一个月。

2.字符串型参数的实例化:

var date=new Date('2021-1-18 12:56:00');  //字符串型参数console.log(date);

登录后复制

完全掌握JavaScript的Date对象

 参数是1月,输出端的结果也是1月,因此利用字符串型参数要比数字型更多一些。

三:格式化年月日

我们已经知道Math对象有很多属性和方法可以直接使用,Date对象也一样,实例化过后也可以使用很多方法,比较常用的有三种格式化年月日的方法

getFullYear()   输出当前年份

getMonth()   输出当前月份 (应注意输出的月份比实际月份小1,输出真实月份应该加1)

getDate()   输出当前几号

getDay()    输出当前周几 (周一到周天分别对应数字:1 2 3 4 5 6 0)

var Date=new Date(); console.log(Date.getFullYear());  //输出当前年份 console.log(Date.getMonth() + 1);  //输出结果为当前月份的前一月,要手动加1才能返回当前月份 console.log(Date.getDate());  //输出当前几号 console.log(Date.getDay());  //输出当前周几

登录后复制

完全掌握JavaScript的Date对象

 如果想要输出效果为 2021年1月18日 星期二 ,以下操作即可

(因为星期几只能返回一个数字,但是根据习惯我们想要返回的是‘星期几’,所以我们把返回的数字当做一个索引,把星期天到星期六放到一个数组中,因为星期天返回的是0,所以把星期天放在数组的第一个位置,正好对应0索引)

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

登录后复制

完全掌握JavaScript的Date对象

四:格式化时分秒

与上面格式化年月日使用方法类似

getHours()   输出当前小时

getMinutes()    输出当前分钟

getSeconds()    输出当前秒

var Date=new Date();  console.log(Date.getHours());  //输出当前小时console.log(Date.getMinutes());  //输出当前分钟console.log(Date.getSeconds());  //输出当前秒

登录后复制

 完全掌握JavaScript的Date对象

 输出连续格式时分秒:

将其封装在了函数内,并利用三元运算符将不足10的数字补0,符合平常看时间的习惯

function time(){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;return h+'时'+m+'分'+s+'秒';}console.log(time());

登录后复制

完全掌握JavaScript的Date对象

五:获取当前时间总毫秒数(时间戳)

这里所说的总毫秒数是指当前时间距离1970年1月1日的总毫秒数,共有四种方法可以表示

valueOf()

getTime()

var date=new Date();console.log(date.valueOf());   console.log(date.getTime());

登录后复制

完全掌握JavaScript的Date对象

 或者使用另外一种简便写法 var date=+new Date();返回的就是总毫秒数

var date=+new Date();console.log(date);

登录后复制

 以及H5新增加的一种方法,这个方法不需要实例化对象即可获得,更为简便

console.log(Date.now());

登录后复制

六:倒计时案例(重点)

在日常开发中很多地方都会用的到倒计时,例如淘宝,京东的双十一秒杀倒计时等,我们如何也写出一个倒计时效果呢,我们首先会想到刚才学到的获取当前时间,再减去我们设置好的时间即可,但是我们获取到的标准时间很可能会出现减去之后是负数的情况(例如02-12)这怎么办呢?于是我们的时间戳便有利用价值了,时间戳即刚才讲到过的总毫秒数,这个时间是永远不会重复的,对此我们可以使用设置好的总毫秒数减去当前的总毫秒数,在进行一系列单位换算,就可以得到一个简单的倒计时案例了,首先我们需要熟练记清楚单位换算之间的关系:

1秒=1000毫秒

天数=秒数/60/60/24

小时数=秒数/60/60%24

分钟数=秒数/60%60

秒数=秒数%60

对于无法整除的秒数,我们利用 parseInt() 方法取整即可,有了这样一个换算关系,我们就可以轻松地完成这个倒计时案例了

function count(time){    var nowtime=+new Date(); //得到当前时间    var aimtime=+new Date(time);  //得到目标时间(结束时间)    var times=(aimtime-nowtime)/1000;  //得到倒计时时间差(毫秒) 除1000得到秒    var d=parseInt(times/60/60/24)  //得到倒计时天数    d=d<10?'0'+d:d;  //将不足10的时间补0    var h=parseInt(times/60/60%24)  //得到倒计时小时数    h=h<10?'0'+h:h;  //将不足10的时间补0    var m=parseInt(times/60%60)  //得到倒计时分钟数    m=m<10?'0'+m:m;  //将不足10的时间补0    var s=parseInt(times%60)  //得到倒计时秒数    s=s<10?'0'+s:s;  //将不足10的时间补0    return d + '天' + h + '时' + m + '分' + s +'秒';  //返回倒计时}alert('倒计时还剩下' + count('2022-1-18 16:30:00'));  //调用并输入目标的结束时间

登录后复制

【相关推荐:javascript视频教程、web前端】

以上就是完全掌握JavaScript的Date对象的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2701245.html

(0)
上一篇 2025年3月7日 19:13:31
下一篇 2025年3月6日 20:37:55

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • JavaScript怎么实现基础类型和对象一样有属性和方法

    本篇文章给大家带来了关于javascript的相关知识,其中主要介绍了关于基础类型和对象一样有属性和方法的相关问题,包括了基础类型当做对象使用以及基础类型构造函数等等,下面一起来看一下,希望对大家有帮助。 【相关推荐:javascript视…

    2025年3月7日 编程技术
    200
  • 简单总结JavaScript事件

    本篇文章给大家带来了关于javascript的相关知识,其中主要介绍了关于事件的简单总结,事件就是文档或浏览器窗口中发生的一些特定的交互瞬间,下面一起来看一下,希望对大家有帮助。 【相关推荐:javascript视频教程、web前端】 事件…

    2025年3月7日 编程技术
    200
  • JavaScript高级语法学习之严格模式

    本篇文章给大家带来了关于javascript的相关知识,其中主要介绍了关于严格模式的相关问题,严格模式很好理解,是一种具有限制性的javascript模式,从而使代码隐式的脱离了“懒散模式”,下面一起来看一下,希望对大家有帮助。 【相关推荐…

    2025年3月7日
    200
  • JavaScript字符串常见基础方法精讲

    本篇文章给大家带来了关于javascript的相关知识,其中主要介绍了关于字符串的相关知识,其中主要介绍了常用的基础方法以及特殊字符、emoji内部表示方式等内容,下面一起来看一下,希望对大家有帮助。 【相关推荐:javascript视频教…

    2025年3月7日 编程技术
    200
  • JavaScript面向对象详细解析之属性描述符

    本篇文章给大家带来了关于javascript的相关知识,其中主要介绍了关于面向对象的相关问题,包括了属性描述符、数据描述符、存取描述符等等内容,下面一起来看一下,希望对大家有帮助。 【相关推荐:javascript视频教程、web前端】 J…

    2025年3月7日
    200
  • 一文掌握JavaScript数字类型

    本篇文章给大家带来了关于javascript的相关知识,其中主要介绍了关于数字类型的相关内容,javascript中存在两种表示数字的类型:number和bigint类型,下面一起来看一下,希望对大家有帮助。 【相关推荐:javascrip…

    2025年3月7日 编程技术
    200
  • 四种方法搞定JavaScript创建多个对象

    本篇文章给大家带来了关于javascript的相关知识,其中主要介绍了关于创建多个对象的相关内容,包括了字面量方法、工厂模式方法、构造函数以及原型加构造函数方法的问题,下面一起来看一下,希望对大家有帮助。 【相关推荐:javascript视…

    2025年3月7日
    200
  • 整理总结JavaScript常见的BOM操作

    本篇文章给大家带来了关于javascript的相关知识,其中主要介绍了关于bom操作的相关问题,包括了window对象的常见事件、javascript执行机制等等相关内容,下面一起来看一下,希望对大家有帮助。 【相关推荐:javascrip…

    2025年3月7日 编程技术
    200
  • JavaScript的Symbol类型、隐藏属性及全局注册表详解

    本篇文章给大家带来了关于javascript的相关知识,其中主要介绍了关于symbol类型、隐藏属性及全局注册表的相关问题,包括了symbol类型的描述、symbol不会隐式转字符串等问题,下面一起来看一下,希望对大家有帮助。 【相关推荐:…

    2025年3月7日
    200
  • 解决JavaScript数据处理的5个常见问题

    本篇文章给大家带来了关于javascript的相关知识,其中主要介绍了关于数据处理中常见的一些问题,包括了数据的增删改查、数据的排序、数据的去重、平级列表变成树形结构以及数组对象相同项合并处理,下面一起来看一下,希望对大家有帮助。 【相关推…

    2025年3月7日 编程技术
    200

发表回复

登录后才能评论