Unicodeエスケープについて
JSON ログや JavaScript リテラルでは、日本語や emoji が \uXXXX として表示されることがあります。hidevtool はプレーンテキストと JSON 形式の \u エスケープを相互変換し、補助平面はサロゲートペアにも対応します。
エンコードは ASCII リテラルを残し、それ以外のコードポイントをエスケープします。デコードは文字列内の \u 列を置換するため、API payload の diff やテストデータ作成に向いています。
JSON.stringify そのものではありません。引用符は自分で付けてください。FAQ では \u、UTF-8 hex、HTML エンティティの使い分けを説明します。
できること
\uXXXX エンコード
BMP 文字は 4 桁 hex。補助平面は高・低サロゲートペアの 2 つの \u 列になります。
その場デコード
長い文字列に埋め込まれたエスケープ列も、貼り付け全体を対象にデコードできます。
ASCII はそのまま
U+007F 未満の英数字などはエンコード時もリテラルのまま残し、混在出力を読みやすくします。
emoji
emoji は \u が 2 つになることがあります。有効なペアなら 1 つのグラフェムに復元されます。
\x ではない
JavaScript の \xNN(2 桁 hex)ではなく、\u とサロゲートパターンが中心です。
JSON 準拠
JSON 文字列リテラルを組み立てるときは、出力の外側にダブルクォートを付けてください。
よくある使い方
日本語を \u エスケープにするには?
テキストを貼り「エンコード」。非 ASCII は \uXXXX(emoji はペアのことがあります)。
\uXXXX をデコードするには?
エスケープ済み文字列を貼り「デコード」。不正な列は黙ってスキップせずエラーになります。
JSON の引用符は付きますか?
いいえ。エスケープされた断片のみ出力します。
よくある質問
- 日本語を \u エスケープにするには?
- テキストを貼り「エンコード」。非 ASCII は \uXXXX(emoji はペアのことがあります)。
- \uXXXX をデコードするには?
- エスケープ済み文字列を貼り「デコード」。不正な列は黙ってスキップせずエラーになります。
- JSON の引用符は付きますか?
- いいえ。エスケープされた断片のみ出力します。
- サロゲートペアの順序は?
- 高サロゲート→低サロゲート。JSON.stringify の astral 文字と同じです。
- hex ツールとの違いは?
- hex は UTF-8 バイト、\u は UTF-16 コードユニットです。ログの形式に合わせて選んでください。
- HTML 内の \u は?
- HTML は &#x; エンティティを使います。マークアップ文脈では HTML エンティティツールを使ってください。