moment.js扩展库moment-range.js时间范围处理工具

简介: moment.js扩展库moment-range.js时间范围处理工具

moment.js扩展库moment-range.js

Fancy date ranges for Moment.js

https://github.com/rotaready/moment-range

const moment = require('moment');
const MomentRange = require('moment-range');
MomentRange.extendMoment(moment);
const range = moment.range('2014-11-01', '2015-02-01');
// 月份
let months = Array.from(range.by('month')).map(
    month => month.format('YYYY-MM-DD')
);
console.log(months);
// [ '2014-11-01', '2014-12-01', '2015-01-01', '2015-02-01' ]
// 年份
const years = Array.from(range.by('year')).map(
    month => month.year()
);
console.log(years);
// [ 2014 ]
// 星期
const weeks = Array.from(range.by('week')).map(
    month => [
        month.startOf('week').format('YYYY-MM-DD'),
        month.endOf('week').format('YYYY-MM-DD'),
    ]
);
console.log(weeks);
// [ [ '2014-10-26', '2014-11-01' ],
//   [ '2014-11-02', '2014-11-08' ],
//   [ '2014-11-09', '2014-11-15' ],
//   [ '2014-11-16', '2014-11-22' ],
//   [ '2014-11-23', '2014-11-29' ],
//   [ '2014-11-30', '2014-12-06' ],
//   [ '2014-12-07', '2014-12-13' ],
//   [ '2014-12-14', '2014-12-20' ],
//   [ '2014-12-21', '2014-12-27' ],
//   [ '2014-12-28', '2015-01-03' ],
//   [ '2015-01-04', '2015-01-10' ],
//   [ '2015-01-11', '2015-01-17' ],
//   [ '2015-01-18', '2015-01-24' ],
//   [ '2015-01-25', '2015-01-31' ] 
// ]
// 季度
const quarters = Array.from(range.by('quarter')).map(
    month => month.format('[Q]Q')
);
console.log(quarters);
//[ 'Q4', 'Q1' ]
相关文章
|
1月前
|
移动开发 JavaScript 前端开发
一些处理浏览器兼容性问题的JavaScript库
这些库在处理浏览器兼容性问题方面都有着各自的特点和优势,可以根据具体的需求和项目情况选择合适的库来使用,从而提高代码的兼容性和稳定性,为用户提供更好的体验。同时,随着浏览器技术的不断发展,还需要持续关注和学习新的兼容性解决方案。
107 48
|
24天前
|
机器学习/深度学习 JavaScript Cloud Native
Node.js作为一种快速、可扩展的服务器端运行时环境
Node.js作为一种快速、可扩展的服务器端运行时环境
35 8
|
28天前
|
JavaScript
如何使用内存快照分析工具来分析Node.js应用的内存问题?
需要注意的是,不同的内存快照分析工具可能具有不同的功能和操作方式,在使用时需要根据具体工具的说明和特点进行灵活运用。
42 3
|
1月前
|
JavaScript 前端开发
Moment.js与其他处理时间戳格式差异的JavaScript库相比有什么优势?
Moment.js与其他处理时间戳格式差异的JavaScript库相比有什么优势?
|
6天前
|
前端开发 JavaScript 应用服务中间件
Nginx 支持 JavaScript:前所未有的扩展
Nginx 是全球领先的高性能 Web 服务器,以其高效的反向代理和负载均衡功能著称。近期,Nginx 正式支持 JavaScript(通过 NJS 模块),基于 V8 引擎,允许在配置中嵌入 JS 代码,极大提升了灵活性和扩展性。开发者可以使用 JavaScript 实现动态请求处理、自定义认证、复杂响应处理、中间件编写及流量控制等功能,显著降低开发和维护难度,同时保持高性能。NJS 模块的引入为 Nginx 带来了前所未有的扩展能力,适应快速变化的业务需求。
16 0
|
1月前
|
CDN
如何在项目中使用Moment.js库?
如何在项目中使用Moment.js库?
|
1月前
|
开发框架 JavaScript 前端开发
TypeScript 是一种静态类型的编程语言,它扩展了 JavaScript,为 Web 开发带来了强大的类型系统、组件化开发支持、与主流框架的无缝集成、大型项目管理能力和提升开发体验等多方面优势
TypeScript 是一种静态类型的编程语言,它扩展了 JavaScript,为 Web 开发带来了强大的类型系统、组件化开发支持、与主流框架的无缝集成、大型项目管理能力和提升开发体验等多方面优势。通过明确的类型定义,TypeScript 能够在编码阶段发现潜在错误,提高代码质量;支持组件的清晰定义与复用,增强代码的可维护性;与 React、Vue 等框架结合,提供更佳的开发体验;适用于大型项目,优化代码结构和性能。随着 Web 技术的发展,TypeScript 的应用前景广阔,将继续引领 Web 开发的新趋势。
39 2
|
1月前
|
JavaScript 前端开发
如何在不影响性能的前提下使用JavaScript库来实现复杂的动画效果?
如何在不影响性能的前提下使用JavaScript库来实现复杂的动画效果?
|
1月前
|
算法 开发者
Moment.js库是如何处理不同浏览器的时间戳格式差异的?
总的来说,Moment.js 通过一系列的技术手段和策略,有效地处理了不同浏览器的时间戳格式差异,为开发者提供了一个稳定、可靠且易于使用的时间处理工具。
39 1
|
JavaScript 前端开发
《JavaScript忍者秘籍》——第1章 进入忍者世界 1.1即将探索的JavaScript库
这些库都经过了全面的构建并且解决了目标问题。基于这些原因,这些库对于我们进一步分析并理解代码库的基础建设,从而洞察世界级JavaScript库建设的过程打下了良好的基础。
1309 0