OSS探訪GitHubでログイン

ブラウザCookieの作成・取得・削除と属性指定を小さなJavaScript APIで扱う

スコアの見方

OSS規模スコアはStars・Watchers・Forks・Contributorsを対数圧縮して重み付けした現在の規模指標(上限なし)です。発掘スコアは現在のOSS規模スコアから発掘時点のOSS規模スコアを引いた値、更新ペースは直近30日Commit数、成長モメンタムは直近の観測期間におけるOSS規模スコア差、OSS健全度は取得できた更新状況・Community Health・Releaseの0〜100評価です。

Stars
22,573
主要言語
JavaScript
ライセンス
MIT
リポジトリ最終更新
2026/09/17
ページ内ナビ

概要

js-cookieはブラウザ側のCookie操作をCookies.set・get・removeへまとめる軽量JavaScriptライブラリです。RFC 6265に沿ったエンコードを行い、期限、path、domain、secure、sameSiteなどの属性をオブジェクトで指定できます。

特徴と向いている用途

公式資料に基づく紹介・実機未検証 · 内容確認日:

主な特徴

Cookieの作成・取得・削除を一つのAPIで扱う

Cookies.set()で値と属性を設定し、Cookies.get()で現在のページから見えるCookieを取得し、Cookies.remove()で削除できます。依存ライブラリはありません。

出典:[1]

期限やpath・domain・secure・sameSiteを明示する

Cookieごとの属性はCookies.set()の第3引数で指定でき、withAttributes()を使うと共通の既定値を持つAPI instanceも作れます。

出典:[1]

ES moduleとUMD/CommonJSの配布物を使い分ける

npm packageはES module向けmoduleと、後方互換向けUMDを指すbrowserを提供します。bundlerを使う構成とscript読み込みの両方へ組み込みやすい形です。

出典:[1][2]

向いている用途

ブラウザ画面で少量のCookie状態を明示的に管理したい場合に向く

設定値、同意状態、画面側で利用する短い状態など、ブラウザから読み書きするCookieを薄いAPIで統一したいfrontendに適します。

出典:[1]

導入前の確認

削除時は設定時と同じ属性を渡す

既定値以外のpath、domain、secure、sameSiteで作成したCookieを削除する場合、Cookies.remove()にも同じ属性を渡す必要があります。

出典:[1]

getの可視範囲は現在のbrowser contextで決まる

Cookies.get()へdomainやpathを渡して検索範囲を変えることはできません。Cookieが返るかどうかは、呼び出し位置からそのCookieが見えるかというブラウザの規則に従います。

出典:[1]

参考にした公式資料

  1. [1]js-cookie 3.0.8 README(2026-10-05)
  2. [2]js-cookie 3.0.8 package metadata(2026-10-05)
  3. [3]js-cookie 3.0.8 release(2026-10-05)
  4. [4]js-cookie security policy(2026-10-05)
  5. [5]js-cookie MIT license(2026-10-05)
編集部からの補足

document.cookieの文字列操作を直接組み立てず、Cookie属性と削除条件を同じAPIで扱える点が実務向けです。特に削除時は、設定時と同じpath・domain・secure・sameSiteを渡す必要がある点を確認してください。

3ステップで試す

  1. 1

    js-cookie 3.0.8を一時projectへ導入する

    current releaseを固定し、browser向け配布artifactを分離したdirectoryで確認します。

    demo=$(mktemp -d "${TMPDIR:-/tmp}/js-cookie.XXXXXX") && cd "$demo" && npm init -y >/dev/null && npm install --save-exact js-cookie@3.0.8
  2. 2

    Cookieのset・get・removeを行う最小HTMLを作る

    UMD buildを読み込み、同じsameSite属性でCookieを作成・取得・削除するREADMEの基本APIを試します。

    printf "%s\n" '<!doctype html>' '<meta charset="utf-8">' '<script src="./node_modules/js-cookie/dist/js.cookie.js"></script>' '<script>' "Cookies.set('oss-tanbou-demo', 'ok', { sameSite: 'strict' });" "document.body.textContent = Cookies.get('oss-tanbou-demo');" "Cookies.remove('oss-tanbou-demo', { sameSite: 'strict' });" '</script>' > index.html
  3. 3

    HTMLをbrowserで開いて値を確認する

    index.htmlをbrowserで開き、bodyにokが表示されることを確認します。scriptの最後でdemo Cookieも削除されます。

    index.html
公式READMEで確認

成長

成長の推移 · 直近30日

22,573 Stars

推移データを蓄積中です。

開発アクティビティ

直近90日・週次

Commit(直近30日)
1
Open PR
7

開発アクティビティを蓄積中です。

Built with

カテゴリとタグ

カテゴリ

GitHubデータ

GitHubのデータGitHubの詳細データを見る

GitHub Topics

  • cookie
  • javascript
Stars
22,573
Forks
2,042
Watchers
329
Open Issues
3
Contributors
56
所有者種別
Organization
主要言語
JavaScript
ライセンス
MIT
リポジトリ最終更新
2026/09/17

このOSSの使い方や活用事例をMarkdownで投稿できます。管理者が承認した後に公開されます。

情報の誤りを報告

掲載内容に誤りや古い情報があればお知らせください。

このページを読んで、次に何をすればよいか分かりましたか?