0.1.2 • Published 8 years ago

silly-datetime v0.1.2

Weekly downloads
1,597
License
MIT
Repository
github
Last release
8 years ago

silly-datetime

Simple datetime formater

NPM

Build Status Coverage Status

Install

npm

npm i silly-datetime --save

bower

bower install silly-datetime --save

Example

var sd = require('silly-datetime');
sd.format(new Date(), 'YYYY-MM-DD HH:mm');
// 2015-07-06 15:10

sd.fromNow(+new Date() - 2000);
// a few seconds ago

ES2015:

import {
    format,
    fromNow
} from 'silly-datetime';
format(new Date(), 'YYYY-MM-DD HH:mm'); // 2015-07-06 15:10
fromNow(+new Date() - 2000); // a few seconds ago

Usage

.format(datetime, format)

Format a Date object to specified format.

  • datetime: Date Object
  • format: formate string, default to 'YYYY-MM-DD HH:mm:ss'
FormatExampleDescription
YYYY20154 digit year
M MM0..12Month number
D DD0..31Day of month
H HH0..2324 hour time
h hh1..1212 hour time used with a A.
a Aam pmPost or ante meridiem
m mm0..59Minutes
s ss0..59Seconds
sd.format(new Date(), 'YYYY-MM-DD HH:mm');
// 2015-07-06 15:10

.fromNow(datetime)

Time from now. This is sometimes called timeago or relative time.

  • datetime: Date Object
sd.fromNow(+new Date() - 2000);
// a few seconds ago

.locate(newLocale)

Changing locale globally. By default, silly-datetime comes with English locale strings.

  • newLocale: locate string or locate Object

Locate string can be en (default) or zh-cn;

var datetime = +new Date() + 10 * 60 * 1000;
sd.locate('zh-cn')
sd.fromNow(datetime);
// 10分钟内

Or just pass an custom locate object with any of the key in the table below:

keyenzh-cn
futurein %s%s内
past%s ago%s前
sa few seconds刚刚
mm%s minutes%s分钟
hh%s hours%s小时
dd%s days%s天
MM%s months%s月
yy%s years%s年
sd.locate({
  past: '%s之前',
  hh: '%s小時'
});
var datetime = +new Date() + 10 * 60 * 60 * 1000;
sd.fromNow(datetime);
// 10小時之前