duration-js
small simple library for dealing with durations
Last updated 3 years ago by icholy .
MIT · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install duration-js 
SYNC missed versions from official npm registry.

Duration Build Status

This is a library for dealing with durations. It works well with javascript's Date objects.

Note: For compatibility with Go's time.Duration use the golang_compatible branch.

$ npm install duration-js
var Duration = require("duration-js");

Parse

  • ms - millisecond
  • s - second
  • m - minute
  • h - hour
  • d - day
  • w - week
var d = new Duration("6w5d4h3m2s1ms");

console.log(
    d.milliseconds(), "\n", // => 4075382001
    d.seconds(),      "\n", // => 4075382
    d.minutes(),      "\n", // => 67923
    d.hours(),        "\n", // => 1132
    d.days(),         "\n", // => 47
    d.weeks(),        "\n"  // => 6
);

Format

console.log(
  "str:",  Duration.hour.toString(),
  "ms:",   Duration.hour.valueOf()
); // => "str: 1h ms: 3600000"

Basic Operations

// Addition
var d1 = new Duration("6d"),
    d2 = new Duration(d1 + Duration.day);
console.log(d2.toString()) // => "168h"

// Multiplication
var d3 = new Duration("5m"),
    d4 = new Duration(d3 * 12);
console.log(d4.toString()) // => "1h"

// etc ...

Dates

// Adding duration to date
var d     = Duration.parse("5h"),
    now   = new Date(),
    later = new Date(now + d);
console.log(later.toString());

// Duration between two dates
var bday = new Date("March 3, 1991"),
    now  = new Date(),
    age  = new Duration(now - bday);
console.log(age.toString());

setTimeout / setInterval

setTimeout(function () {
    // runs 5 minutes later
}, new Duration("5m"));

setInterval(function () {
    // runs every 10 seconds 
}, 10 * Duration.second);

Current Tags

  • 4.0.0                                ...           latest (3 years ago)

20 Versions

  • 4.0.0                                ...           3 years ago
  • 3.9.2                                ...           3 years ago
  • 3.9.1                                ...           3 years ago
  • 3.9.0                                ...           3 years ago
  • 3.8.0                                ...           3 years ago
  • 3.7.1                                ...           4 years ago
  • 3.7.0                                ...           4 years ago
  • 3.6.0                                ...           4 years ago
  • 3.5.1                                ...           4 years ago
  • 3.5.0                                ...           4 years ago
  • 3.3.4                                ...           6 years ago
  • 3.3.3                                ...           6 years ago
  • 3.3.2                                ...           6 years ago
  • 3.3.1                                ...           6 years ago
  • 3.3.0                                ...           6 years ago
  • 3.2.0                                ...           6 years ago
  • 3.1.1                                ...           6 years ago
  • 3.1.0                                ...           6 years ago
  • 3.0.1                                ...           7 years ago
  • 3.0.0                                ...           7 years ago
Maintainers (1)
Downloads
Today 0
This Week 20
This Month 62
Last Day 0
Last Week 22
Last Month 40
Dependencies (0)
None
Dev Dependencies (2)

Copyright 2014 - 2016 © taobao.org |