2011-10-09 91 views
2

我正在构建一个生成JSON配置文件的Web应用程序(使用Javascript/jQuery)。JSON转换为字符串而不添加引号至键

最后,应用程序应该将生成的JSON转换为字符串,以便它可以被用户复制?

目前我正在做一个简单的JSON.stringify(),但是这会将引号添加到键和值中。为了使配置文件起作用,必须将键导出而不带引号(除非声明)。

例如,"id": "ezdzdz"应该打印为id: "ezdzdz",除非它实际上在JSON中写为“id”。

谢谢,非常感谢所有帮助!

+2

如果是JSON而不是原生的Javascript对象,则必须引用我相信的键名称。 –

+3

在JSON语法中,引号是强制性的。它们可能在Javascript本身是可选的,但为了使它成为有效的JSON,它需要引用引号。 – Spudley

+1

请参阅:http://stackoverflow.com/questions/949449/json-spec-does-the-key-have-to-be-surrounded-with-quotes –

回答

1

在JavaScript中嵌入一个JSON对象,不带引号上的键是有效的。这不是有效的JSON,但它是有效的Javascript。例如,对于单元测试中的存根数据很有用。

我写了一个工具来做这个叫做JSON Beautifier的工具。这里是: http://www.csvjson.com/json_beautifier

+0

这很好,但它仍然引用键即使框在对象数组上被选中。 –

+0

确实。修复一个错误。修复后我会在这里回复。 –

+0

现在修复。这是演示。 http://www.csvjson.com/json_beautifier/d7b87615362b761067d6b5c7979e0605 –

相关问题