I use the following JS code to parse a JSON string from a separate JS file:
// extract JSON from a module JS var jsonMatch = data.match( /\/\*JSON\[\*\/([\s\S]*?)\/\*\]JSON\*\// ); data = JSON.parse( jsonMatch ? jsonMatch[1] : data );
This is an example JS file. I am extracting a JSON string from:
JsonString = {"entities":[{"type":"EntityPlayer","x":88,"y":138}]};
This code works very well, however if the JS file with the JSON string contains a carriage return and is not on the same full line, I get a syntax error.
Example:
JsonString = { "entities":[{ "type":"EntityPlayer", "x":88, "y":138}] };
It returns the following error:
JSON.parse: unexpected non-whitespace character after JSON data
Any idea how I could modify my parsing to work by removing extra spaces or to remove carriage returns and new line spaces?
source share