1、时间格式化 //昨天的时间 var day1 = new Date(); day1.setTime(day1.getTime()-24*60*60*1000); var s1 = day1.getFullYear()+"-" + (day1.getMonth()+1) + "-" + day1.getDate(); //今天的时间 var day2 = new Date(); day2.setTime(day2.getTime()); var s2 = day2.getFullYear()+"-" + (day2.getMonth()+1) + "-" + day2.get 在JavaScript中,获取和操作当前时间是常见的任务,特别是在网页应用中用于显示日期和时间信息。以下是一些关于如何在JavaScript中获取昨天、今天和明天的日期,以及如何格式化和展示日期时间的实例代码。 我们来看如何获取昨天、今天和明天的日期。在JavaScript中,`Date`对象是处理日期和时间的基础。通过创建一个新的`Date`对象,我们可以获取当前系统时间。例如: ```javascript var today = new Date(); ``` 要获取昨天的日期,我们需要将当前时间减去24小时(即24 * 60 * 60 * 1000毫秒): ```javascript var yesterday = new Date(); yesterday.setTime(yesterday.getTime() - 24 * 60 * 60 * 1000); ``` 类似地,获取明天的日期就是将当前时间加上24小时: ```javascript var tomorrow = new Date(); tomorrow.setTime(tomorrow.getTime() + 24 * 60 * 60 * 1000); ``` 为了格式化日期,我们需要确保月份、日期等不足两位时前面补零。例如: ```javascript var formattedYesterday = yesterday.getFullYear() + "-" + (yesterday.getMonth() + 1) + "-" + yesterday.getDate(); ``` 这里要注意,`getMonth()`返回的是0-11,所以要加1得到1-12。同样,对于日期部分,如果不满两位,我们可以通过字符串连接实现补零。 接下来,如果需要获取当前时间到小时、分钟和秒的详细信息,可以使用`getFullYear()`, `getMonth()`, `getDate()`, `getDay()`, `getHours()`, `getMinutes()`, 和 `getSeconds()`方法。例如: ```javascript var now = new Date(); var year = now.getFullYear(); var month = now.getMonth() + 1; var date = now.getDate(); var dayOfWeek = now.getDay(); var hour = now.getHours(); var minute = now.getMinutes(); var second = now.getSeconds(); // 对不足两位的数值补零 month = month < 10 ? "0" + month : month; date = date < 10 ? "0" + date : date; hour = hour < 10 ? "0" + hour : hour; minute = minute < 10 ? "0" + minute : minute; second = second < 10 ? "0" + second : second; var weekDay = ["星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"][dayOfWeek]; var currentTime = year + "年" + month + "月" + date + "日 " + hour + ":" + minute + ":" + second + " " + weekDay; ``` 如果你希望每秒钟更新一次时间,可以使用`setTimeout`函数: ```javascript function updateCurrentTime() { // 更新显示的时间 $("#currentDate").html(currentTime); // 每1000毫秒(即1秒)再次调用此函数 setTimeout(updateCurrentTime, 1000); } // 调用一次开始更新 updateCurrentTime(); ``` 此外,你还可以通过扩展`Date`对象的方法来简化日期格式化,如上面提到的`format`函数。这允许自定义日期的输出格式,如"yyyy-MM-dd"。虽然这不是JavaScript内置的功能,但可以通过添加以下代码实现: ```javascript Date.prototype.format = function(format) { var o = { "M+": this.getMonth() + 1, // 月份 "d+": this.getDate(), // 日 "h+": this.getHours(), // 小时 "m+": this.getMinutes(), // 分 "s+": this.getSeconds(), // 秒 "q+": Math.floor((this.getMonth() + 3) / 3), // 季度 "S": this.getMilliseconds() // 毫秒 }; if (/(y+)/.test(format)) format = format.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length)); for (var k in o) if (new RegExp("(" + k + ")").test(format)) format = format.replace(RegExp.$1, (RegExp.$1.length === 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length))); return format; }; var yesterday = new Date(); yesterday.setDate(yesterday.getDate() - 1); var yesterdayFormatted = yesterday.format("yyyy-MM-dd"); ``` 通过这种方式,你可以方便地格式化日期,并根据需求灵活调整显示格式。这些方法在前端开发中非常实用,特别是在处理用户界面的时间显示时。
- 粉丝: 7
- 资源: 909
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于Vue3、TypeScript、Element Plus、Vue Router、Pinia、Axios、i18n、Vite等开发的后台管理,使用门槛极低!
- 数据安全建设.pptx
- LitJsonDLL类库
- Delphi 12 控件之GrabScreen.pas
- 多思计组(计算机组成原理上机实验):实验5 累加器
- Delphi 12 控件之Apprehend Screen Capture 6.0 for D5-XE12.7z
- html+css网页设计 美食 爱美食1个页面
- python正则表达式和re模块详解.pdf
- 多思计组(计算机组成原理上机实验):实验7 微程序控制器
- 空中俯视物体检测10-YOLO(v5至v9)、COCO、CreateML、Darknet、Paligemma数据集合集.rar
- 【实验1 一位全加器】多思计算机组成原理实验:一位全加器的设计与实现
- ECharts散点图-大规模星云散点图.zip
- ECharts散点图-基础散点图.zip
- ECharts散点图-单轴散点图.zip
- ECharts散点图-流式渲染和视觉映射操作.zip
- ECharts散点图-男女身高体重分布.zip