Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

imCoding/Duration.js

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

46 Commits

Repository files navigation

Duration Build Status

This is a port of Go's Time/ParseDuration functionality.

It passes the same test cases

Note: If you don't care about the compatibility with Go checkout out the millisecond_unit branch. It makes working with Date objects much easier.

var Duration = require("./duration.js");

Parse duration string

var d = Duration.parse("4h3m2s");
console.log(
 "nanoseconds", d.nanoseconds(), "\n", // => 14582000000000
 "microseconds", d.microseconds(), "\n", // => 14582000000
 "milliseconds", d.milliseconds(), "\n", // => 14582000
 "seconds", d.seconds(), "\n", // => 14582
 "minutes", d.minutes(), "\n", // => 243
 "hours", d.hours(), "\n" // => 4
);

Create duration string

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

Can use basic operators

// Addition
var d1 = Duration.parse("2h"),
 d2 = new Duration(d1 + Duration.hour);
console.log(d2.toString()) // => "3h"
// Multiplication
var d1 = Duration.parse("5m"),
 d2 = new Duration(d1 * 12);
console.log(d2.toString()) // => "1h"

Working with dates

// Adding duration to date
var d = Duration.parse("5h"),
 now = new Date(),
 later = new Date(now + d.milliseconds());
console.log(later.toString());
// Duration between two dates
var bday = Date.parse("March 3, 1991"),
 now = new Date(),
 age = new Duration((now - bday) * Duration.millisecond);
console.log(age.toString());

About

Go time.ParseDuration port

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

AltStyle によって変換されたページ (->オリジナル) /