带你读《现代Javascript高级教程》二十三、Date类:日期和时间处理(2)

简介: 带你读《现代Javascript高级教程》二十三、Date类:日期和时间处理(2)

带你读《现代Javascript高级教程》二十三、Date类:日期和时间处理(1)https://developer.aliyun.com/article/1349522?groupCode=tech_library


b 实现toISODate方法

Date.prototype.toISODate = function() {
  const year = this.getFullYear();
  const month = String(this.getMonth() + 1).padStart(2, '0');
  const day = String(this.getDate()).padStart(2, '0');
  return `year−{year}-{month}-${day}`;};
// 使用示例const date = new Date();const isoDate = date.toISODate();
console.log(isoDate);

2 计算两个日期之间的天数差

Date.prototype.getDaysDiff = function(otherDate) {
  const oneDay = 24 * 60 * 60 * 1000; // 一天的毫秒数
  const diffInTime = Math.abs(this - otherDate);
  const diffInDays = Math.round(diffInTime / oneDay);
  return diffInDays;};
// 使用示例const date1 = new Date('2022-01-01');const date2 = new Date('2022-01-10');const daysDiff = date1.getDaysDiff(date2);
console.log(daysDiff); // 输出 9

3 获取当前月份的第一天和最后一天

Date.prototype.getFirstDayOfMonth = function() {
  const year = this.getFullYear();
  const month = this.getMonth();
  return new Date(year, month, 1);};
Date.prototype.getLastDayOfMonth = function() {
  const year = this.getFullYear();
  const month = this.getMonth() + 1;
  return new Date(year, month, 0);};
// 使用示例const date = new Date();const firstDayOfMonth = date.getFirstDayOfMonth();const lastDayOfMonth = date.getLastDayOfMonth();
console.log(firstDayOfMonth);
console.log(lastDayOfMonth);
  1. 总结

本文介绍了Date类的属性、应用场景,并提供了一些常用的Date方法的实现代码示例。Date类在JavaScript中用于处理日期和时间相关的操作非常重要,掌握其基本用法能够帮助我们更好地处理和管理日期和时间。通过逐步学习和实践,我们可以在实际项目中灵活运用Date类,满足各种日期和时间处理的需求。

  1. 参考资料

 

相关文章
|
4月前
|
JavaScript 前端开发
JavaScript Date(日期) 对象
JavaScript Date(日期) 对象
66 2
|
3月前
|
Web App开发 JavaScript 前端开发
2024年5月node.js安装(winmac系统)保姆级教程
本篇博客为2024年5月版Node.js安装教程,适用于Windows和Mac系统。作者是一名熟悉JavaScript与Vue的大一学生,分享了Node.js的基本介绍、下载链接及简单安装步骤。安装完成后,通过终端命令`node -v`验证版本即可确认安装成功。欢迎关注作者,获取更多技术文章。
51 2
2024年5月node.js安装(winmac系统)保姆级教程
|
3月前
|
JavaScript 前端开发 搜索推荐
Moment.js、Day.js、Miment,日期时间库怎么选?
【10月更文挑战第29天】如果你需要一个功能强大、插件丰富的日期时间库,并且对性能要求不是特别苛刻,Moment.js是一个不错的选择;如果你追求极致的轻量级和高性能,那么Day.js可能更适合你;而如果你有一些特定的日期时间处理需求,并且希望在性能和功能之间取得平衡,Miment也是可以考虑的。
|
4月前
|
JavaScript 前端开发
JavaScript Date
【10月更文挑战第06天】
69 18
|
5月前
|
Web App开发 JavaScript 前端开发
JavaScript 类(class)
JavaScript 类(class)
36 2
JavaScript 类(class)
|
4月前
|
JavaScript 前端开发
js教程——函数
js教程——函数
65 4
|
5月前
|
JavaScript 前端开发
|
5月前
|
JavaScript 前端开发 开发者
JavaScript 类继承
JavaScript 类继承
31 1
|
5月前
|
JavaScript 前端开发 Java
JavaScript 类知识点概览
概览JavaScript中类的知识点,包括类的定义和实现、添加方法和get/set方法、类的继承和静态方法的使用。通过学生类和人员类的例子,演示了类的构造器、方法定义、继承关系和静态方法的调用。
JavaScript 类知识点概览
|
5月前
|
JavaScript 安全
ES6中JS类实现的解读
ES6中JS类实现的解读
30 2

热门文章

最新文章

  • 1
    当面试官再问我JS闭包时,我能答出来的都在这里了。
    40
  • 2
    【02】仿站技术之python技术,看完学会再也不用去购买收费工具了-本次找了小影-感觉页面很好看-本次是爬取vue需要用到Puppeteer库用node.js扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
    27
  • 3
    Node.js 中实现多任务下载的并发控制策略
    32
  • 4
    【2025优雅草开源计划进行中01】-针对web前端开发初学者使用-优雅草科技官网-纯静态页面html+css+JavaScript可直接下载使用-开源-首页为优雅草吴银满工程师原创-优雅草卓伊凡发布
    26
  • 5
    【JavaScript】深入理解 let、var 和 const
    49
  • 6
    【04】Java+若依+vue.js技术栈实现钱包积分管理系统项目-若依框架二次开发准备工作-以及建立初步后端目录菜单列-优雅草卓伊凡商业项目实战
    47
  • 7
    【03】Java+若依+vue.js技术栈实现钱包积分管理系统项目-若依框架搭建-服务端-后台管理-整体搭建-优雅草卓伊凡商业项目实战
    54
  • 8
    【02】Java+若依+vue.js技术栈实现钱包积分管理系统项目-商业级电玩城积分系统商业项目实战-ui设计图figmaUI设计准备-figma汉化插件-mysql数据库设计-优雅草卓伊凡商业项目实战
    57
  • 9
    如何通过pm2以cluster模式多进程部署next.js(包括docker下的部署)
    72
  • 10
    【01】Java+若依+vue.js技术栈实现钱包积分管理系统项目-商业级电玩城积分系统商业项目实战-需求改为思维导图-设计数据库-确定基础架构和设计-优雅草卓伊凡商业项目实战
    55