An open API service indexing awesome lists of open source software.

https://github.com/ccforward/date-calc

A simple date calculator
https://github.com/ccforward/date-calc

Last synced: about 1 year ago
JSON representation

A simple date calculator

Awesome Lists containing this project

README

          

[![NPM version][npm-image]][npm-url] [![Build Status][travis-image]][travis-url]

# Simple Date Calculator: DateCalc

A simple date calculator from my personal project [Zhihu-Spider](https://github.com/ccforward/zhihu)

## NPM

[DateCalc](https://www.npmjs.com/package/date-calc)

## Test
Test Framework is `ava`

``` shell
npm install
npm test
```

## update

#### @v1.0.6
add the `time(timestamp)` function that returns full date

#### @v1.0.6
add the `beforeCN` and `afterCN` function that returns chinese format days

#### @v1.0.5
fix bug of `monthEN()` function

#### @v1.0.4
add the `today` function

```js
const DateCalc = require('date-calc')
const d = new DateCalc()

d.today() // returns today date

```

#### @v1.0.3

fix the `new Date()` bug of Safari of macOS and iOS

#### @v1.0.2

1. update: method `now()`

The `now()` can receive a parameter like `now(20161001)`

``` js
const DateCalc = require('date-calc')
let d = new DateCalc();
console.log(d.now()) // returns now date
d.now('20161002') // changs DateCalc's inner data
console.log(d.now()) // returns 20161002
console.log(d.before()) // returns 20161001
console.log(d.after(10)) // returns 20161012
```

2. add: method `weekDay()`

The `weekDay()` returns an Object of weekdays info

``` js
const DateCalc = require('date-calc')
let d = new DateCalc('20161001');
d.weekDay() // returns { day: 6, en: 'Sat', cn: '六' }
```

## Usage

``` js
const DateCalc = require('date-calc')
// or ES2015
// import DateCalc from 'date-calc'

let d = new DateCalc('20460818');
d.before();
d.after();
d.before(2);
d.after(2);
d.now();
d.month();
d.beforeMonth()
d.afterMonth()

```

## Parameters

* `new DateCalc()` no parameters means today
* `new DateCalc('20460818')` reference date

## Instance Method

* `d.before()` the day before reference date 20460817
* `d.after()` the day after reference date 20460819
* `d.before(2)` twos days before reference date 忽略初始天数 20460816
* `d.after(2)` twos days after reference date 20460820
* `d.now()` now date 20460818
* `d.month()` the month of reference date 204608
* `d.beforeMonth()` the month before reference date 204607
* `d.afterMonth()` the month after reference date 204609
* month English descripe
* `new DateCalc('20460118').monthEN()` returns 'Jan'
* `new DateCalc('20460218').monthEN()` returns 'Feb'
* `new DateCalc('20460318').monthEN()` returns 'Mar'
* `new DateCalc('20460418').monthEN()` returns 'Apr'
* `new DateCalc('20460518').monthEN()` returns 'May'
* `new DateCalc('20460618').monthEN()` returns 'Jun'
* `new DateCalc('20460718').monthEN()` returns 'Jul'
* `new DateCalc('20460818').monthEN()` returns 'Aug'
* `new DateCalc('20460918').monthEN()` returns 'Sep'
* `new DateCalc('20461018').monthEN()` returns 'Oct'
* `new DateCalc('20461118').monthEN()` returns 'Nov'
* `new DateCalc('20461218').monthEN()` returns 'Dec'
* month Chinese descripe
`new DateCalc('20460118').CHN()` returns '2046年01月18日'

[downloads-image]: https://img.shields.io/npm/dm/date-calc.svg
[npm-url]: https://www.npmjs.com/package/date-calc
[npm-image]: https://img.shields.io/npm/v/date-calc.svg

[travis-url]: https://travis-ci.org/ccforward/date-calc
[travis-image]: https://travis-ci.org/ccforward/date-calc.svg?branch=master