JavaScript 利用 document.lastModified 获取网页最后修改时间
本文介绍如何在 JavaScript 中获取当前网页的最后修改时间。通过访问 document.lastModified 属性,可以快速获得网页文件的最后更新时刻,常用于缓存控制或内容时效性判断。
基本原理与目标
document.lastModified 是 Document 接口中的一个只读属性,它返回表示当前文档最后修改时间的字符串。浏览器通常以本地时区的时间格式返回该值(如 "04/03/2015 02:42:22")。利用这个属性,可以判断页面内容是否被更新,或者作为缓存失效的依据。
操作顺序
第1步:直接读取修改时间字符串
目的:快速打印或获取原始的时间字符串格式。
入口:浏览器控制台或直接嵌入 HTML 脚本。
动作:在 <script> 标签中调用 document.lastModified 并输出。
<!DOCTYPE html> <html> <body> This document was last modified on: <script> document.write(document.lastModified); </script> </body> </html>
运行上述代码,页面将直接显示类似于 04/03/2015 02:42:22 的文本结果。需要注意的是,返回格式依赖于浏览器实现,通常为月/日/年时:分:秒格式。
第2步:转换为 Date 对象以便处理
目的:将字符串转换为标准的 JavaScript Date 对象,以便进行时间计算、比较或重新格式化。
入口:HTML 中的 <script> 块。
动作:使用 new Date() 构造函数包装 document.lastModified 的值。
var lastMod = new Date(document.lastModified); console.log("Last Modified Date Object: ", lastMod);
执行后,console 中会输出一个完整的日期时间对象,支持调用如 getMonth()、getFullYear()、toLocaleString() 等方法来获取更详细的日期信息。
第3步:替代方案(仅限现代浏览器)
目的:使用更标准化的属性获取精确到毫秒的时间戳。
注意:document.lastModifiedDate 在某些旧版或非标准浏览器中可能不受支持,但它是 W3C 的标准属性,返回值为 Date 类型。
// 推荐方式:直接获取 Date 对象 var modDate = document.lastModifiedDate; if (modDate) { console.log(modDate.toLocaleString()); } else { // 降级处理 console.log(document.lastModified); }
完成判断与排错
- 验证成功:页面上显示了时间字符串,或控制台输出了合法的 Date 对象,且年份、月份等信息与实际文件更新时间接近。
- 常见错误:如果在服务器动态生成页面(如 PHP、ASP.NET、Node.js 等)时未正确设置 HTTP 响应头中的
Last-Modified字段,document.lastModified可能会返回页面的加载时间而非源文件的最后修改时间。确保服务器配置正确是关键。 - 格式兼容性:由于
lastModified返回的是字符串,不同浏览器的解析可能略有差异。始终建议将其转换为Date对象后再进行逻辑判断。
简要总结
通过 document.lastModified,开发者可以轻松获取网页的最后修改时间。对于需要精确控制的场景,建议结合 HTTP 头部信息及 document.lastModifiedDate 使用。以上就是 JavaScript 获取当前网页最后修改时间的详细内容,更多关于 JavaScript 基础知识的资料请关注本站其它相关文章!
免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。









