JavaScript-如何将包含转义字符的Json数据转化为JavaScript对象

发布于 2016-10-28 03:17:52 字数 269 浏览 1279 评论 5

  1. 通过Newtonsoft.JsonConvert.SerializeObject,将C#对象转化为Json数据: {"name":"'"abcn123r"}
  2. 通过Dojo.fromJson('{"name":"'"abcn123r"}')得到Javascript对象,然后抛异常:“未结束的字符串常量”。
  3. 问题:当Json数据中包含转义字符时,如何实现顺利转换呢?

非常感谢各位大侠!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

夜无邪 2017-10-21 10:12:11

如果原生JS支持那么优先使用JSON.parse方法将字符串转为JS对象。

泛泛之交 2017-06-15 16:53:15

Newtonsoft.JsonConvert.SerializeObject本身就能处理这些字符的,至于dojo没用过,不清楚。

瑾兮 2017-03-09 08:36:03

直接用eval();
var obj = eval(jsonStr);
上边的不行就用下边的。
var obj = eval("("+jsonStr+")");

灵芸 2016-12-23 11:00:50

在Firefox,chrome,opera,safari,ie9,ie8等高级浏览器可以用JSON对象的parse()方法。JSON.parse(string)将字符串转为JSON格式;
ie8(兼容模式),ie7和ie6没有JSON对象,不过http://www.json.org/提供了一个json.js,这样ie8(兼容模式),ie7和ie6就可以支持JSON对象以及其stringify()和parse()方法;可以在https://github.com/douglascrockford/JSON-js上获取到这个js,一般现在用json2.js。
ie8(兼容模式),ie7和ie6也可以使用eval()将字符串转为JSON对象,var obj= eval("("+str+")") 。

浮生未歇 2016-12-18 01:45:26

把后台传回的数据当成text接收,然后 直接var obj = eval("("+jsonStr+")");

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文