[JavaScript]内置对象Date初识
Date 日期对象是构造函数,需要用 new 实例化后使用。
// 没有传入参数时,返回的是当前的时间 var testDate = new Date(); // 常见的传入参数形式 var date1 = new Date('2021-10-1 8:8:8'); var date2 = new Date('2021/1/11'); var date3 = new Date(2020, 2, 29); // 实际生成的日期是2020-3-29,月份是0开始的
date.getFullYear(); // 获取年 date.getMonth(); // 获取月,从0开始计算,一月是0,...十二月是11。 date.getDate(); // 获取日 date.getDay(); // 获取星期,从0开始计算。周日是0,周一是1,...周六是6。 date.getHours(); // 获取时 date.getMinutes(); // 获取分 date.getSeconds(); // 获取秒
// 日期格式化,提供一种星期转换的思路 function dateFormatChange(date) { // 星期转换 const dayChange = ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六',]; return date.getFullYear() + '年' + (date.getMonth() + 1) + '月' + date.getDate() + '日' + ' ' + dayChange[date.getDay()]; }
时间戳
时间戳是指格林威治时间1970年01月01日00:00:00 (北京时间1970年01月01日08:00:00) 起至现在的总毫秒数。
可以用 .valueOf(); 或 .getTime(); 方法获取。
// 最常用的写法 +new Date(); 返回的就是时间戳 var date = +new Date('2021-7-16'); console.log(date); // 1626364800000 // Date.parse() Date.parse(new Date()) // 1642471535000 Date.parse("2022/1/18 10:05") // 1642471500000 // H5 新增 Date.now() console.log(Date.now());
练习:倒计时。(要点:时间戳转为天、时、分、秒)
function countdown(aimTime) { // 目标时间戳 // const aimTime = +new Date('2021-10-01 10:00:00'); // 现在的时间戳 var atNow = +new Date(); // 时间差 var timeLeft = aimTime - atNow; // 考点:时间戳转换为天、时、分、秒。 var dday = Math.floor(timeLeft / 1000 / 60 / 60 / 24); // 外层用parseInt();也可 var dhour = Math.floor(timeLeft / 1000 / 60 / 60 % 24); var dmin = Math.floor(timeLeft / 1000 / 60 % 60); var dsec = Math.floor(timeLeft / 1000 % 60); return dday + '天' + dhour + '小时' + dmin + '分' + dsec + '秒'; } const thatDay = +new Date('2021-10-01 10:00:00'); console.log('距离目标时间还有' + countdown(thatDay) + '。');
分类:
前端 / JavaScript
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)