DFS_Shuo_Chen e2eb47a926 V1.16.9 11 月之前
..
dest e2eb47a926 V1.16.9 11 月之前
src e2eb47a926 V1.16.9 11 月之前
test e2eb47a926 V1.16.9 11 月之前
.babelrc e2eb47a926 V1.16.9 11 月之前
.jshintrc e2eb47a926 V1.16.9 11 月之前
.npmignore e2eb47a926 V1.16.9 11 月之前
.travis.yml e2eb47a926 V1.16.9 11 月之前
LICENSE e2eb47a926 V1.16.9 11 月之前
README.md e2eb47a926 V1.16.9 11 月之前
bower.json e2eb47a926 V1.16.9 11 月之前
package.json e2eb47a926 V1.16.9 11 月之前
rollup.js e2eb47a926 V1.16.9 11 月之前

README.md

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'
Format Example Description
YYYY 2015 4 digit year
M MM 0..12 Month number
D DD 0..31 Day of month
H HH 0..23 24 hour time
h hh 1..12 12 hour time used with a A.
a A am pm Post or ante meridiem
m mm 0..59 Minutes
s ss 0..59 Seconds
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:

key en zh-cn
future in %s %s内
past %s ago %s前
s a 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小時之前