本文へ移動

Tane種

シードで同じ数列を再現し、項目を並べ替えたり選んだり、日替わりの問題を共有したり、保存した位置から再開したりできます。

「種」は英語の seed に当たる日本語です。 名前について(英語)

目次

はじめに

はじめに

Taneを入れ、1つのシードから同じ数列を再現します。

Taneを入れ、1つのシードから同じ数列を再現します。基本エンジンはNode 22以降とブラウザーで使え、DOMも実行時の依存パッケージも必要ありません。

インストール

npm install @johnmorrisdotca/tane

型も含まれています。Reactは別のフック用エントリーを使う場合だけ必要です。

同じ数列を出す

import { mulberry32, seedFrom } from "@johnmorrisdotca/tane";

const seed = seedFrom("room-7");
const first = mulberry32(seed);
const second = mulberry32(seed);
console.log([first(), first(), first()]);
console.log([second(), second(), second()]);
[ 0.27501549874432385, 0.8835344351828098, 0.677862610667944 ]
[ 0.27501549874432385, 0.8835344351828098, 0.677862610667944 ]

乱数の関数は0以上1未満の数を返し、呼ぶたびに進みます。同じシードで新しく作ると最初から、同じ関数を使い続けると続きから出ます。seedFromは数値を読み、文字列をハッシュします。

使い方を選ぶ

並べ替えと選択、独立した数列、日替わりのシード、保存と再開、埋め込みとフックへ進みます。公開APIに全関数があります。

ソースを見るGitHub で編集@johnmorrisdotca/tane 1.3.0 のソースから作成しました。

この日本語は、まだ日本語を母語とする方の確認を受けていません。訂正を歓迎します。