Jason S Jason S - 1 year ago 125
Javascript Question

JSON: why are forward slashes escaped?

The reason for this "escapes" me.

JSON escapes the forward slash, so a hash

{a: "a/b/c"}
is serialized as
instead of


Answer Source

JSON doesn't require you to do that, it allows you to do that. It also allows you to use "\u0061" for "A", but it's not required. Allowing \/ helps when embedding JSON in a <script> tag, which doesn't allow </ inside strings, like Seb points out.

Some of Microsoft's ASP.NET Ajax/JSON API's use this loophole to add extra information, e.g., a datetime will be sent as "\/Date(milliseconds)\/". (Yuck)

Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download