{"id":19901112,"url":"https://github.com/chanceyu/month-calculator","last_synced_at":"2025-07-18T16:02:07.487Z","repository":{"id":57192866,"uuid":"112821316","full_name":"ChanceYu/month-calculator","owner":"ChanceYu","description":":paperclip: A plugin for month date calculator","archived":false,"fork":false,"pushed_at":"2018-10-11T13:43:01.000Z","size":194,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-06-30T20:16:35.443Z","etag":null,"topics":["calendar","calendars","date","datepicker"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ChanceYu.png","metadata":{"files":{"readme":"README-zh.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-12-02T07:16:16.000Z","updated_at":"2018-10-11T13:43:02.000Z","dependencies_parsed_at":"2022-08-24T03:11:04.287Z","dependency_job_id":null,"html_url":"https://github.com/ChanceYu/month-calculator","commit_stats":null,"previous_names":["chanceyu/calendar-calculator"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ChanceYu/month-calculator","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ChanceYu%2Fmonth-calculator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ChanceYu%2Fmonth-calculator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ChanceYu%2Fmonth-calculator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ChanceYu%2Fmonth-calculator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ChanceYu","download_url":"https://codeload.github.com/ChanceYu/month-calculator/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ChanceYu%2Fmonth-calculator/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265791236,"owners_count":23829159,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["calendar","calendars","date","datepicker"],"created_at":"2024-11-12T20:14:07.969Z","updated_at":"2025-07-18T16:02:07.420Z","avatar_url":"https://github.com/ChanceYu.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# month-calculator\n[![NPM][img-npm]][url-npm]\n\n[![Build Status][img-travis]][url-travis]\n[![Language][img-javascript]][url-github]\n[![License][img-mit]][url-mit]\n\n一个月份日期计算器插件，[English](./README.md)\n\n\n## 安装\n\n```bash\nnpm install month-calculator --save\n```\n\n\n## 特点\n\n- 高度可定制\n- 不依赖任何UI, 你可以自己设计\n- 支持浏览器、Node端、小程序\n\n\n## 使用\n\n```javascript\nvar oMonth = new MonthCalculator({\n    startDate: '2017-07-17',\n    endDate: '2018-08-18'\n});\n\nvar months = oMonth.getTotal();\n\nconsole.log(months);\n```\n\n\n## 参数\n\n- `startDate` - 开始日期，形如 `YYYY-MM-DD`\n- `endDate` -  结束日期，形如 `YYYY-MM-DD`\n\n\n## 方法\n\n- `getTotal` - 获取开始日期到结束日期之间的所有月份\n- `getToday` - 如果今天的日期在开始日期和结束日期之间, 将会返回一个对象 `{ monthIndex, date }`, 其中值 `monthIndex` 就是今天的月份对应的索引（所有月份中的第几个月），否则返回`undefined`\n\n\n## 结果\n\n使用 `getTotal` 方法将会返回以下数据结构\n\n```bash\n[\n    {\n        title: '2017-07',\n        dates: [\n            {\n                date: '2017-06-25',\n                year: '2017',\n                month: '06',\n                day: '25',\n                disabled: true,\n                isPrevMonth: true,\n                week: '日',\n                weekday: 0\n            }\n            ...\n        ]\n    }\n    ...\n]\n```\n\n\n### 每条数据的属性（也就是每一天的数据）\n- `date` - 当天完整的日期 ，格式 `YYYY-MM-DD`\n- `year` - 当天的年份 ，格式 `YYYY`\n- `month` - 当天的月份 ，格式 `MM`\n- `day` - 当天的日期 ，格式 `DD`\n- `weekday` - 数字从 `0` 到 `6` 的每周值\n- `week` - 中文的每周值，`日一二三四五六`\n- `isPrevMonth` - 如果是上个月份的日期, 就是 `true`\n- `isNextMonth` - 如果是下个月份的日期, 就是 `true`\n- `disabled` - 如果是上个月份的日期、下个月份的日期，或者当月不可用的日期(不在 `startDate`开始日期和`endDate`结束日期范围之内),  就是 `true`\n\n\n## 案例\n\n- [react-calendar-picker](https://github.com/ChanceYu/react-calendar-picker)\n- [weapp-calendar-picker 微信小程序组件](https://github.com/ChanceYu/weapp#weapp-calendar-picker)\n\n\n## 协议\n\n[![license][img-mit]][url-mit]\n\n\n[url-github]: https://github.com/ChanceYu/month-calculator\n[url-npm]: https://www.npmjs.com/package/month-calculator\n[url-travis]: https://travis-ci.org/ChanceYu/month-calculator\n[url-david]: https://david-dm.org/ChanceYu/month-calculator\n[url-mit]: https://opensource.org/licenses/mit-license.php\n\n[img-npm]: https://nodei.co/npm/month-calculator.png?compact=true\n[img-travis]: https://travis-ci.org/ChanceYu/month-calculator.svg?branch=master\n[img-david]: https://david-dm.org/ChanceYu/month-calculator/status.svg\n[img-javascript]: https://img.shields.io/badge/language-JavaScript-brightgreen.svg\n[img-mit]: https://img.shields.io/badge/license-MIT-blue.svg\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchanceyu%2Fmonth-calculator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchanceyu%2Fmonth-calculator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchanceyu%2Fmonth-calculator/lists"}