当前位置: 首页 > news >正文

12_JavaScript_实现日期

目录

new Date()

常用方法

getFullYear 获取年

getMonth 获取月

getDate 获取日期

getDay 获取周几

getHours 获取小时

getMinutes 获取分钟

getSeconds 获取秒

getTime 获取到某个时间的毫秒数/时间戳

每个获取的方法都有一个对应的设置方法

获取时间差

定时器

作业


 

js提供的内置的构造函数,专门用来获取时间的

new Date()

// 在不传参数的情况下,默认返回当前时间
var time = new Date();
console.log(time); //Fri Mar 03 2023 21:38:40 GMT+0800 (中国标准时间)

//字符串传参的情况
    console.log( new Date("2018"));
    console.log( new Date("2018-02"));
    console.log( new Date("2018-02-10"));
    console.log( new Date("2018-02-10 15:"));
    console.log( new Date("2018-02-10 15:11:"));
    console.log( new Date("2018-02-10 15:11:55"));

//数字的传参情况
    
    console.log(new Date(2018,3)); //月份从0开始  0表示1月 1表示2月
    console.log(new Date(2018,3,18)); //年 月 日
    console.log(new Date(2018,3,18,21));//年 月 日 时
    console.log(new Date(2018,3,18,21,50));//年 月 日 时 分
    console.log(new Date(2018,3,18,21,50,30));//年 月 日 时 秒

//传一个时间戳
时间戳是从1970年1月1日0点0分0秒开始的    每过一毫秒这个时间戳就会加1
格林威治时间
 console.log(new Date(1208978018083));

常用方法

js提供了一系列的方法,获取到年月日 时分秒

getFullYear 获取年

getMonth 获取月

getDate 获取日期

getDay 获取周几

getHours 获取小时

getMinutes 获取分钟

getSeconds 获取秒

var time = new Date(); //不传参数获取的是当前的时间对象 ,,如果你传了参数获取的都是你传的那个时间的信息
console.log(time.getFullYear()); //获取日期对象的年
console.log(time.getMonth()); //获取日期对象的月份 2 
console.log(time.getDate()); //获取日期对象的日 几号
console.log(time.getDay());//获取日期对象的 周几
console.log(time.getHours());//获取日期对象的 小时
console.log(time.getMinutes());//获取日期对象的 分钟
console.log(time.getSeconds());//获取日期对象的 秒

getTime 获取到某个时间的毫秒数/时间戳

console.log(new Date().getTime()); //当前日期的时间戳/毫秒数
console.log(new Date("2019-01-01 10:15:30").getTime());//获取到某个时间的毫秒数

每个获取的方法都有一个对应的设置方法

setFullYear setMonth .....(除了day星期)

var time = new Date("2020-10-1");
console.log(time.getFullYear(),"设置前");//2020
time.setFullYear(2019);
time.setMonth(5);
console.log(time.getFullYear(),"设置后");//2019
console.log(time.getMonth(),"设置后");//5

获取时间差

两个时间点相差的时间,在js中时间不能直接做减法

获取想获取到时间差,那就用两个时间的时间戳做减法

var d1 = new Date("2022-10-01 10:00:00");
var d2 = new Date("2022-10-03 11:01:21");
var diff = Math.abs(d1 - d2); // 相差的时间戳
//console.log(diff); 想办法获取到这个时间戳有多少天 分 秒

// 根据时间戳  获取到天
var dd = parseInt(diff / 1000 / 60 / 60 / 24);
// 根据时间戳  获取到小时  不满一天的剩下的小时
var hh = parseInt((diff / 1000 / 60 / 60) % 24);
// 根据时间戳  获取到分钟  不满一小时的剩下的分钟
var mm = parseInt((diff / 1000 / 60) % 60)
// 根据时间戳  获取到秒  不满一分钟的剩下的秒
var ss = (diff / 1000) % 60
console.log(ss);

定时器

设置定时器

语法:第一个参数是个函数,第二个参数是间隔的时间,单位是毫秒
var timer = setInterval(function(){

},1000)

清除定时器

clearInterval(timer)

作业

1 将日期格式化输出 "2019|01-10" (日期对象==>字符串)

2 封装一个函数,功能是求两个时间相差的天数

3 封装函数 获取N天后的日期

function fn(n){
	
}
fn(19);// 得到的就是19天后的日期是记号

4 把当前系统时间展示到页面里 (定时器)

2025-03-025 22:51:50  在不刷新浏览器的情况下,每隔一秒改变一次时间

5 做京东倒计时 (活动是当天23点30分结束) 设置的时间和当前的时间相差了多久

每隔一秒  改变一次时间 

 

 

相关文章:

  • dfs(深度优先)——太抽象了
  • 【新能源汽车实验室设备控制:PLC与单片机选型指南(深度解析+实战案例)】
  • AI数字人直播系统
  • java中的枚举类型和c,c++的有区别吗?c,c++的枚举,结构体,联合体,三种数据有什么区别和联系
  • 基于DrissionPage的TB商品信息采集与可视化分析
  • 《大语言模型》学习笔记(四)--Transformer 模型
  • 数据库 第一章 MySql基础(1)
  • Thales靶机渗透攻略
  • 蓝桥杯备考----> Apple Catching G(线性DP)
  • 01LinePlot
  • 【蓝桥杯速成】| 12.回溯排列N皇后
  • leetcode day30 134+135+860
  • 深挖增长内核:好产品驱动增长的全方位解析
  • 深度解析:TOML、XML、YAML及其他配置/数据格式对比
  • 用YoloV8训练一个图片检测的模型,我接下来要做哪些事
  • 《深入Linux内核架构》读书笔记--第三章 内存管理
  • 【含文档+PPT+源码】基于Python的全国景区数据分析以及可视化实现
  • 【例3.5】位数问题(信息学奥赛一本通-1313)
  • BertTokenizer.from_pretrained的讲解和使用
  • golang编写UT:applyFunc和applyMethod区别
  • 3月中国减持189亿美元美债、持仓规模降至第三,英国升至第二
  • 夜读丨什么样的前程值得把春天错过
  • 上海国际珠宝时尚功能区未来三年如何建设?六大行动将开展
  • 沃尔玛上财季净利下滑12%:关税带来成本压力,新财季价格涨幅将高于去年
  • 泽连斯基已离开土耳其安卡拉
  • 泽连斯基:乌代表团已启程,谈判可能于今晚或明天举行