这听起来真的很少,但我需要在浏览器屏幕上打印一些Javascript,以便将其剪切并粘贴到另一个程序中。
我正在使用来自JSON.stringify()
的{{1}},但是它不是转义字符,例如引号和新行(“,\ n \ n),它们实际上是JSON对象的控制部分,需要是逃脱了。
例如,我会得到这样的字符串,在导入到其他程序时会导致问题:
json2.js
我是否可以使用任何库来逃避我需要逃离的所有角色?
谢谢!
答案 0 :(得分:4)
选项#2
var g = {
sampleFunc2 : function (data) {
var dataAsText = JSON.stringify(data);
// w jquery
$('#debugArea').text(dataAsText);
}
}
// usage...
g.sampleFunc2({ id: "4", name: "John Smith" });
在标记中:
<textarea id='debugArea' rows='10' cols='50'></textarea>
答案 1 :(得分:2)
我做了以下,这是一个美丽的黑客。
var g = {
sampleFunc : function (data) {
var dataAsText = JSON.stringify(data);
var response = prompt('you can copy and paste this', dataAsText);
}
}
// usage...
g.sampleFunc({ id: "4", name: "John Smith" });
JavaScript提示......必须爱它。
答案 2 :(得分:1)
你确定这不仅仅是一个浏览器渲染的东西吗? JSON库将正确转义字符以提供有效的JSON字符串。您是否尝试将json2.js的输出与某些浏览器(如chrome)的原生JSON.stringify进行比较?