我得到一个像这样的 json 对象
{
"First": "MyName's",
"Last": "MyLast"
}
我想对这个对象进行字符串化,以便 ' 的价值变成\'
它可以是 's 或 'S 或 'anything
我正在使用 JSON.stringify(json_obj) 但它给了我字符串
"{"First":"MyName's","Last":"MyLast"}"
你可以看到 MyName's 我想要这个 MyName\'s
如果您要拥有不止一次这样的值,请尝试使用正则表达式替换以防万一,
.stringify(data).replace(/'/g, "\\'")
演示:http: //jsfiddle.net/qMsyg/2/
字符串化后,json
只需应用replace("'", "\'");
JSON.stringify(json).replace("'", "\'");
或者您可以在方法中使用替换参数stringify()
JSON.stringify(json, function(key, value) {
return value.replace("'", "\'");
})
注意: 正如@vega 所指出的,replace("'", "\'")
只会替换第一次出现。如果您有更多值要转义,请使用正则表达式(如replace(/'/g, "\\'")
)。
选择最适合您需求的那一款