alert('How do i make abspath==U:\\path?'); //shouldnt i only need one \?
alert(JSON.stringify({abspath:'U:\path'})); //wtf
alert(JSON.stringify({abspath:'U:\\path'}));//wtf2
//alert(JSON.stringify({abspath:'U:/path'}));//different
alert(JSON.stringify({abspath:"U:\path"})); //even here!?
alert(JSON.stringify({abspath:"U:\\path"})); //fuuuuuuuuuuuuu
user34537
问问题
146 次
4 回答
4
当脚本输出{"abspath":"U:\\path"}
时,这是一个有效的 JSON 字符串。它看起来不像是一个有效的对象,因为它仍然被转义——JSON 字符串并不是为了人类可读的。
如果你要解码那个字符串,你最终会得到想要的值。您的输出仍然被转义,因为它应该是,等待解码。如果它没有在编码字符串中转义,您将无法对其进行解码。
见发生: http: //jsfiddle.net/dhzMQ/1/(需要可用性console
)
延伸阅读
于 2012-07-31T17:47:25.487 回答
3
alert( JSON.stringify({abspath:"U:\\path"}) )
这是正确的,您需要\\
JSON 格式,因为这就是 \ 的存储方式。
您可以通过解析该 JSON 并查询 abspath 来判断。
alert(JSON.parse(JSON.stringify({abspath:"U:\\path"})).abspath);
alert( JSON.stringify({abspath:"U:\\path"}) )
于 2012-07-31T17:49:54.330 回答
2
存储在对象中的字符串:
JSON.parse(JSON.stringify({"abspath": "U:\\path"})).abspath
...只有一个\
。
于 2012-07-31T17:57:12.593 回答
1
有效的 JSON 在键和值周围有引号
{"abspath":"U:\\path"}
为我工作
JSON.stringify({"abspath":"U:\\path"});
于 2012-07-31T17:45:41.350 回答