#author("2026-08-31T22:04:51+09:00","default:guide","guide") * Pkript/API/グローバル関数 [#g08934eb] #author("2026-09-04T00:05:49+09:00","default:mcp","bot-mcp") * Pkript/API/グローバル関数 [#xef6d495] グローバルスコープで直接呼び出せる関数。 ** リファレンス [#g1b2f4a9] ** リファレンス [#t101c7e3] *** htmlsc(str) [#t4fe1251] *** htmlsc(str) [#o1b28cf3] #pkript(highlight){{ #highlight{{ htmlsc(str) }} - str: String 戻り値: String: & < > " ' を HTML エンティティに変換した文字列。 戻り値: String: & < > " ' を HTML エンティティに変換した文字列。 JSX の {} 内は自動エスケープのため、htmlsc() を重ねると二重エスケープになる。 *** 型変換 [#d7c0c1ef] *** 型変換 [#r18fadc9] |~関数|~戻り値|~説明|h |String(val)|String|任意の値を文字列に変換。null は空文字列| |Number(val)|Number|文字列を数値に変換| |Number(val)|Number|文字列を数値に変換。数値でない文字列はエラー| |Boolean(val)|Boolean|任意の値を真偽値に変換| |parseInt(str, [radix])|Number(変換できなければ NaN)|先頭から読める分だけ整数として読む| |parseFloat(str)|Number(変換できなければ NaN)|先頭から読める分だけ小数として読む| |isNaN(val)|Boolean|数値に変換できないか| |isFinite(val)|Boolean|有限の数値か| *** 可変長引数 [#fa640f0b] Number() はフォームやページから来た文字列に対して厳しすぎることがある。"12px" のような値を扱うときは parseInt() / parseFloat() を使う。 - parseInt() は読める桁だけを読み、残りは捨てる。1文字も読めなければ NaN - radix は 2〜36。省略時は10進数("08" は 8)。"0x" で始まる文字列は16進数として読む - isNaN() / isFinite() は Number() と同じ読み方で変換してから判定する。isNaN("12px") は true *** 定数 [#z953b4f8] |~名前|~説明|h |NaN|数値でないことを表す値。NaN === NaN は false なので、判定には isNaN() を使う| |Infinity|無限大。-Infinity は 0 - Infinity と書く| *** 可変長引数 [#ccb968fc] |~関数|~戻り値|~説明|h |func_get_args()|Array|全引数の配列| |func_num_args()|Number|引数の個数| |func_get_arg(n)|any|n番目の引数(0始まり)| エントリポイントに引数名を書かずに使える。PHPプラグインとの互換性のために提供されている。 *** PHPプラグイン互換エイリアス [#i1888ff4] *** PHPプラグイン互換エイリアス [#a2eee3e2] 対応するメソッドが存在する場合はそちらを使う。 |~関数|~対応するメソッド|h |is_page(page)|wiki.exists(page)| |make_pagelink(page, [label])|wiki.link(page, label)| |convert_html(text)|wiki.convert(text)| |strip_bracket(str)|wiki.stripBracket(str)| |encode(str) / decode(str)|wiki.encode(str) / wiki.decode(str)| |get_source(page)|wiki.source(page)| |get_existpages([prefix])|wiki.pages(prefix)| |get_filetime(page)|wiki.time(page)| |is_freeze(page)|wiki.isFrozen(page)| |format_date(t, [paren])|date.format(t, paren)| ** 使用法 [#c93e07e6] ** 使用法 [#g848ad73] *** 可変長引数を受け取る [#lf6ccb82] *** 可変長引数を受け取る [#tea4e909] #pkript(highlight){{ #highlight{{ function plugin_hello_convert() { const args = func_get_args(); return "<p>" + htmlsc(args[0] || "World") + "</p>"; } }}