js-json2 2016-10-28.1-031b1d9 JSON encoders and decoders

The files in this collection implement JSON encoders/decoders in JavaScript.

json2.js: This file creates a JSON property in the global object, if there isn't already one, setting its value to an object containing a stringify method and a parse method. The parse method uses the eval method to do the parsing, guarding it with several regular expressions to defend against accidental code execution hazards. On current browsers, this file does nothing, preferring the built-in JSON object.

json_parse.js: This file contains an alternative JSON parse function that uses recursive descent instead of eval.

json_parse_state.js: This files contains an alternative JSON parse function that uses a state machine instead of eval.

cycle.js: This file contains two functions, JSON.decycle and JSON.retrocycle, which make it possible to encode cyclical structures and DAGs in JSON, and to then recover them. This is a capability that is not provided by ES5. JSONPath is used to represent the links.