ユーティリティ関数
関数型プログラミング
| メソッド | 説明 | 詳細 |
|---|---|---|
| debounce | デバウンス関数 | debounce |
| throttle | スロットル関数 | throttle |
| memoize | メモ化関数 | memoize |
| noop | 何もしない関数 | noop |
| compose | ミドルウェア関数の合成 | compose |
文字列の処理
| メソッド | 説明 | 詳細 |
|---|---|---|
| md5 | MD5 ハッシュ関数 | md5 |
| randomString / getRandomString | ランダムな文字列を生成 | randomString |
| clearBr | 文字列から空白・HTML タグ・改行を取り除く | clearBr |
| clearStr | 文字列から前後の空白・URL エンコード・引用符を取り除く | clearStr |
| truncate | 文字列を省略記号で短くする(Unicode に安全) | truncate |
| strParse | 文字列を解釈してオブジェクトにする | strParse |
| toString | 値を文字列型に変換 | toString |
| transformText | ArrayBuffer をテキストに変換 | transformText |
| checkEncoding | Uint8Array データの文字エンコーディングを判定 | checkEncoding |
| getMatchingSentences | キーワードを含む文をまるごと抜き出す | getMatchingSentences |
| isString | 値が文字列型かどうかを判定 | isString |
オブジェクトの処理
| メソッド | 説明 | 詳細 |
|---|---|---|
| merge / mergeExports | オブジェクトの統合。遅延ゲッターの export オブジェクトも | merge |
| isEqual | 二つの値が等しいかを深く比較 | isEqual |
| cloneDeep | オブジェクトや配列をディープコピー | cloneDeep |
| querystring | オブジェクトを URL のクエリ文字列に変換 | querystring |
| filterObj | オブジェクトを絞り込む | filterObj |
| formatJson | 整形した JSON | formatJson |
数値の処理
| メソッド | 説明 | 詳細 |
|---|---|---|
| range | 数値を指定した範囲に収める | range |
| clamp / lerp / inverseLerp / remap / fit / linearstep / smoothstep | シェーダー流の補間と値域の付け替え | range |
| mathjs | 誤差のない数値計算関数 | mathjs |
| perToNum | パーセント文字列を数値に変換 | perToNum |
| transformNumber | 数値を単位付きの文字列に整形 | transformNumber |
| addNumSym | 数値に正負の符号を付ける | addNumSym |
色の処理
| メソッド | 説明 | 詳細 |
|---|---|---|
| hexToRgb | 16 進数の色を RGB に変換 | hexToRgb |
| rgbToHex | RGB の値を 16 進数の色に変換 | rgbToHex |
| randomColor | ランダムな色オブジェクトを生成 | randomColor |
| Color / ColorScheme | Color クラス、値クラス、変換、パレット生成 | Color |
| blendScreen / blendMultiply / blendOverlay / luma / vibrance / cosinePalette / srgbToLinear | シェーダー流の色の合成と調整(0〜1 のチャンネル) | Color |
時間の処理
| メソッド | 説明 | 詳細 |
|---|---|---|
| formatDuration | 秒数を整形した文字列に変換 | formatDuration |
| formatRelative | ある時点を今から見て言い表す(「3 日前」など) | formatRelative |
| parseVttTimestamp / parseVttCueTiming | WebVTT 字幕のタイミング行を解釈 | parseVttTimestamp |
| timestampToTime | タイムスタンプを Date オブジェクトに変換 | timestampToTime |
| performanceTime | 高精度のタイムスタンプを取得 | performanceTime |
端末の判定
| メソッド | 説明 | 詳細 |
|---|---|---|
| isMobile | 端末がモバイルかどうかを判定 | isMobile |
| isWeiXin | ブラウザーが WeChat かどうかを判定 | isWeiXin |
| isClient | 実行環境がクライアントかどうかを判定 | isClient |
| isSafari | ブラウザーが Safari かどうかを判定 | isSafari |
| currentDevice | 現在の端末の種類を取得 | currentDevice |
DOM の操作
| メソッド | 説明 | 詳細 |
|---|---|---|
| addClassToElement | DOM 要素に CSS クラス名を追加 | addClassToElement |
| removeClassToElement | DOM 要素から CSS クラス名を削除 | removeClassToElement |
| createDocumentFragment | DocumentFragment を作る | createDocumentFragment |
| escapeHtml | HTML の特殊文字をエスケープ | escapeHtml |
| Chain | メソッドチェーンできる DOM 操作クラス | Chain |
| create | DOM 要素を作るヘルパー関数 | create |
| EventManager / createDoubleTapDetector | 範囲を区切ったリスナー登録とダブルタップ検出 | EventManager |
| adoptStyles | スタイルシートのテキストを shadow root に流し込む | adoptStyles |
| computePlacement | 浮かぶパネルを基準要素に対して反転・ずらし配置 | computePlacement |
| setFontSize2html | モバイル向けの rem 可変によるビューポート調整 | setFontSize2html |
メディア
| メソッド | 説明 | 詳細 |
|---|---|---|
| AudioRecorder | マイクの音声を Blob に録音 | AudioRecorder |
| createSpeechRecognizer | Web Speech API による音声のテキスト化 | createSpeechRecognizer |
ストレージ
| メソッド | 説明 | 詳細 |
|---|---|---|
| localStorageGetItem | localStorage から値を取得 | localStorageGetItem |
| localStorageSetItem | localStorage に値を保存 | localStorageSetItem |
URL とクエリ
| メソッド | 説明 | 詳細 |
|---|---|---|
| getAllQueryString | URL からクエリパラメーターを取り出す | getAllQueryString |
| encodeUrl | URL を安全にエンコード | encodeUrl |
| appendUrl | URL にクエリパラメーターを足す | appendUrl |
Cookie
| メソッド | 説明 | 詳細 |
|---|---|---|
| getCookie | 指定した cookie の値を取得 | getCookie |
| getCookieByName | 正規表現で Cookie の値を取得 | getCookieByName |
画像の処理
| メソッド | 説明 | 詳細 |
|---|---|---|
| convertImageToBase64 | 画像ファイルを Base64 に変換 | convertImageToBase64 |
| isImageSize | 画像ファイルの寸法を検証 | isImageSize |
パフォーマンス
| メソッド | 説明 | 詳細 |
|---|---|---|
| getPerformance | ページのパフォーマンス指標を取得 | getPerformance |
| getFrame | フレームレートを算出 | getFrame |
| getPixelRatio | Canvas の解像度比を取得 | getPixelRatio |
ネットワーク
| メソッド | 説明 | 詳細 |
|---|---|---|
| imageRequest | 画像リクエストで通信の遅延を測る | imageRequest |
| networkSpeed | 通信の ping 値とゆらぎを測る | networkSpeed |
| connection | 現在のネットワーク接続の情報を取得 | connection |
| getStatus / status | HTTP ステータスコードとメッセージの相互引き | getStatus |
ブラウザー
| メソッド | 説明 | 詳細 |
|---|---|---|
| getWindow | ビューポートの大きさを取得 | getWindow |
| createObjectURL / requestUrlToBuffer | オブジェクト URL の作成。URL をバイト列として取得 | createObjectURL |
スクリプトの読み込み
| メソッド | 説明 | 詳細 |
|---|---|---|
| scriptOnLoad | script や link タグを動的に差し込む | scriptOnLoad |
エラーの処理
| メソッド | 説明 | 詳細 |
|---|---|---|
| handleConsole | console のメソッド呼び出しを横取りして処理 | handleConsole |
| handleError | グローバルなエラー処理 | handleError |
| handleFetchHook | fetch リクエストを横取りして処理 | handleFetchHook |
その他
| メソッド | 説明 | 詳細 |
|---|---|---|
| TOTP | 時刻ベースのワンタイムパスワード生成 | TOTP |
| createSignal | リアクティブなシグナルを作る | createSignal |
| setMime / MimeType | MIME タイプの対応表を設定・更新 | setMime |
| getExtensions | MIME タイプから拡張子を取得 | getExtensions |
| SyncHook | 同期的なイベントフッククラス | SyncHook |
| durationHandler | 遅らせて実行する関数を作る | durationHandler |