How do I handle newlines in JSON?
javascript, json, newline
Solution
This is what you want:
var data = '{"count" : 1, "stack" : "sometext\\n\\n"}';
You need to escape the `\` in your string (turning it into a double-`\`), otherwise it will become a newline in the JSON source, not the JSON data.
Problem
I've generated some JSON and I'm trying to pull it into an object in JavaScript. I keep getting errors. Here's what I have: ``` var data = '{"count" : 1, "stack" : "sometext\n\n"}'; var dataObj = eval('('+data+')'); ``` This gives me an error: ``` unterminated string literal ``` With `JSON.parse(data)`, I see similar error messages: "`Unexpected token ↵`" in Chrome, and "`unterminated string literal`" in Firefox and IE. When I take out the `\n` after `sometext` the error goes away in both cases. I can't seem to figure out why the `\n` makes `eval` and `JSON.parse` fail.