【发布时间】:2016-04-19 16:36:30
【问题描述】:
我正在尝试为 Ace(Ajax.org Cloud9 编辑器)设置正确的格式,因此我正在解析从 MVC 视图中的@Model 提取的 Json,如下所示:
var model = JSON.stringify(@Html.Raw(Json.Encode(Model)));
var comma = model.replace(/,/g, ",\r\n");
var curlyBracket = comma.replace(/{/g, "{\r\n");
var colonCurlyBracket = bracket.replace(/:{/g, ':\r\n\{');
var bracketCurlyBracket = colonCurlyBracket.replace(/:\[{/g, ':\r\n\[{');
editor.setValue(bracketCurlyBracket, -1);
问题是这并没有做任何缩进来保持格式正确,它只是放回车和换行。我尝试使用:
var comma = model.replace(/,/g, ",\r\n\");
var curlyBracket = comma.replace(/{/g, "{\r\n\");
var colonCurlyBracket = bracket.replace(/:{/g, ':\r\n\\{');
var bracketCurlyBracket = colonCurlyBracket.replace(/:\[{/g, ':\r\n\\[{');
但额外的“\”在前两行给我错误“未终止的字符串常量”,在后两行它只是在编辑器中添加了一个“\”。我需要这些行继续,以便缩进和格式化工作。我该怎么做?
【问题讨论】:
-
你想漂亮地打印 json 吗? Related
-
没有。只需要格式看起来正确,以便更容易阅读。
-
请查看 JSON.stringify 的第三个参数,它可能会为您解决所有问题。
标签: javascript json asp.net-mvc cloud9-ide