JavaScript - Escape double quotes

jquery, json, replace

Solution

It should be:

var str='[{"Company": "XYZ","Description": "\\"TEST\\""}]';

First, I changed the outer quotes to single quotes, so they won't conflict with the inner quotes. Then I put backslash before the innermost quotes around `TEST`, to escape them. And I escaped the backslash so that it will be treated literally.

You can get the same result with use of a JSON function:

var str=JSON.stringify({Company: "XYZ", Description: '"TEST"'});

Problem

How do you escape double quotes if the JSON string is the following? ``` var str = "[{Company: "XYZ",Description: ""TEST""}]" ``` I want to escape the secondary double quotes in value TEST. I have tried the following, but it does not work. ``` var escapeStr = str.replace(/""/g,'\"'); ``` What am I missing?

Original source