Javascript JSON中的JSON字符串
我想在JSON请求中创建一个JSON字符串。这是我的密码 JSJavascript JSON中的JSON字符串,javascript,json,escaping,stringify,Javascript,Json,Escaping,Stringify,我想在JSON请求中创建一个JSON字符串。这是我的密码 JS var x = { a: 1, b: 'a sample text', }; var request = { t: JSON.stringify(x), c: 2, r: 'some text' }; console.log(request); 有人能帮我摆脱双引号吗 控制台 Object { t: "{"a":1,"b":"a sample text"}", //This cre
var x = {
a: 1,
b: 'a sample text',
};
var request = {
t: JSON.stringify(x),
c: 2,
r: 'some text'
};
console.log(request);
有人能帮我摆脱双引号吗
控制台
Object {
t: "{"a":1,"b":"a sample text"}", //This creates a problem, double quotes inside double quotes.
c: 2,
r: "some text"
}
提前谢谢。没问题。它只是您的
控制台.log
,只需使用“
分隔即可显示所有字符串
正如您所说,这个request
对象在JSON请求中使用,它将在另一次JSON.stringify
ed中使用有效的结果
{"t":"{\"a\":1,\"b\":\"a sample text\"}","c":2,"r":"some text"}
这正是浏览器控制台显示字符串值的方式,在输出中用双引号括起来。这是完全正常的,没有任何东西会被破坏 您可以通过将JSON字符串转换回对象并使用属性来测试它
console.log( JSON.parse(request.t).b ); // a sample text
这可能没有什么帮助。但是,我遇到了一个问题,JSON中的JSON字符串没有属性。我能够通过以下操作解析JSON字符串:
//Return from remote php request {'{"firsttest": 0, ""scndTest": 1"}'};
// How to access
let data = Object.Keys(jsonWJsonString)[0];
let justJSONValue = JSON.parse(data);
这是因为没有可引用的对象属性,因此可以使用索引值;这为我们提供了JSONString。希望这对任何人都有帮助。干杯您没有问题。如果您有问题,请
JSON.stringify(请求)
您将获得一个完全有效的JSON对象。然后您可以对其进行JSON.parse
并确认您返回的对象与原始对象相同。这个问题似乎与主题无关,因为这里实际上没有问题。正确转义引号只是使用字符串文字时的问题。您必须转义引号,以便解析器知道字符串值的结束位置。但是,您是通过编程方式生成字符串的,此时不再涉及解析器。我的错。如果您在另一个JSON中构建JSON,那么询问某人是一个愚蠢的问题。console.log(JSON.parse(request.t));应该足够了。