JSONで改行を含むテキストデータをハンドリングする

改行を含むテキストをJSONでやり取りする場合のメモです。

<textarea> などで入力された改行は \n で表現されます。

JSONは \n をサポートしていませんが、 \n<br> に置き換えたり、 \\n という感じでエスケープするとうまくいきます。

# HTMLファイルに出力したいとき
json.text.replace(/\n/g, '<br>')

# 「\n」としてどうしても出力したいとき
json.text.replace(/\n/g, '\\n')

# \nを消す場合
json.text.replace(/\n/g, '')

/g はRegular expression、正規表現です。

これでいい感じにテキストデータをやり取りできます。やったね!