Dropping plain text straight into a JSON string value often breaks parsing. Here's why escaping is necessary.
Why it breaks unescaped
A JSON string is wrapped in double quotes ("), so a literal double quote inside the text gets parsed as the end of the string. A raw newline character is also a control character that isn't allowed directly inside a JSON string literal.
The escaping rules
A double quote becomes \", a backslash becomes \\, a newline becomes \n, and a tab becomes \t. Unicode characters like Korean can stay as-is, though some older systems require converting them to \uXXXX form for compatibility.
Where this comes up in practice
This matters when putting multi-line text (a code snippet, a log) into a JSON field for an API request body, or when a JSON-based config file needs to store a file path or regex full of backslashes.