npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

bizday

v2.0.2

Published

これはbizday(=営業日)を操作するライブラリです。

Downloads

2

Readme

bizday

これはbizday(=営業日)を操作するライブラリです。

bd = new bizday('2018-05-01')
bd.val() // '2018-05-01'
bd.add() // '2018-05-02'
bd.sub() // '2018-05-01'
bd.val() // '2018-05-01'

constructor

new bizday(date, opts)

date (string)

日付の初期値を設定します。'2018-01-01','20180101'といった形式が使用できます。省略すると現在の日付になります。

var bd;
bd = new bizday();
bd.val(); // '現在の日付'
bd.add(); // '翌営業日の日付;
var bd;
bd = new bizday('20180101');
bd.val() // '2018-01-01'
bd.add() // '2018-01-02'
var bd;
bd = new bizday('2018-01-01');
bd.val()// '2018-01-01'
bd.add()// '2018-01-02'

[opts.format] (string)

出力するformatを指定します。formatはMoment.jsに準拠します。
Moment.js | Docs

var bd;
bd = new bizday('2018-01-01', {format: ''});
bd.val() // '2018-01-01T00:00:00+09:00'
bd.add() // '2018-01-02T00:00:00+09:00'
var bd;
bd = new bizday('2018-01-01', {format: 'YYYYMMDD'});
bd.val() // '20180101'
bd.add() // '20180102'

[opts.type] (string)

このオプションをつけない場合、営業日は土日以外となります。しかし実際には祝日も営業していない事が多いので、typeオプションを設定する事で祝日を考慮した営業日を使用できます。

type: 'jp'

日本の祝日を考慮します。元旦は祝日ですが1月2日は平日の場合営業日になります。

type: 'go'

日本の官公庁の営業日です。土日と祝日、12月29日から1月3日までを除いた日になります。

参考: 行政機関の休日に関する法律

type: 'tse'

東京証券取引所の営業日です。土日と祝日、12月31日から1月3日までを除いた日になります。

var bd;
bd = new bizday('2017-12-31', {type: 'jp'});
bd.val() // '2017-12-31'
bd.add() // '2018-01-02'

[opts.reject] (string | RegExp)

営業日から除外する日付を指定します。文字列または正規表現が使用できます。
文字列の場合、内部ではString.prototype.includes()で判定しています。

var bd;
bd = new bizday('2018-01-01', {reject: '-01-02'});
bd.val() // '2018-01-01'
bd.add() // '2018-01-03'

例えば1月2日を除外したい場合に'01-02'とすると、〇〇01年02月も全て除外されるので注意が必要です。

var bd;
bd = new bizday('2018-01-01', {reject: /\d{4}-01-\d{2}/});
bd.val() // '2018-01-01'
bd.add() // '2018-02-01'

複数指定する場合は配列に格納します。

var bd;
bd = new bizday('2018-01-01', {
  reject: [
    /\d{4}-01-\d{2}/,
    '-02-01'
    ]
});
bd.val() // '2018-01-01'
bd.add() // '2018-02-02'

method

val()

インスタンスが保持している日付を返します。

var bd;
bd = new bizday('2018-01-01');
bd.val()// '2018-01-01'

add(count)

日付を進めて更新し、その日付を返します。 引数を省略した場合、翌営業日に更新します。

var bd;
bd = new bizday('2018-07-02');
bd.val()// '2018-07-02'
bd.add()// '2018-07-03'

引数として日数xを指定するとx営業日後の日付に更新します。

var bd;
bd = new bizday('2018-07-02', {type: 'jp'});
bd.add(15) // '2018-07-24'

sub(count)

日付を戻して更新し、その日付を返します。 引数を省略した場合、前営業日に更新します。

var bd;
bd = new bizday('2018-07-02');
bd.val()// '2018-07-02'
bd.sub()// '2018-06-29'

引数として日数xを指定するとx営業日前の日付に更新します。

var bd;
bd = new bizday('2018-07-24', {type: 'jp'});
bd.sub(15) // '2018-07-02'

warning

  • 対応しているのは2000-01-01から2030-12-31の間だけです。範囲を超えると例外をthrowします。
  • 未来の祝日に関しては変わる可能性があります。

thanks

祝日のデータに関してはこちらからお借りしています。
holiday-jp/holiday_jp-ruby: Japanese holiday.

holiday-jp/holiday_jp-js: Japanege holiday.