ALKMaps.Format.JSON

A parser to read/write JSON safely.  Create a new instance with the ALKMaps.Format.JSON constructor.

Inherits from

Summary
ALKMaps.Format.JSONA parser to read/write JSON safely.
Properties
indent{String} For “pretty” printing, the indent string will be used once for each indentation level.
space{String} For “pretty” printing, the space string will be used after the “:” separating a name/value pair.
newline{String} For “pretty” printing, the newline string will be used at the end of each name/value pair or array item.
level{Integer} For “pretty” printing, this is incremented/decremented during serialization.
pretty{Boolean} Serialize with extra whitespace for structure.
nativeJSON{Boolean} Does the browser support native json?
Constructor
ALKMaps.Format.JSONCreate a new parser for JSON.
Functions
readDeserialize a json string.
writeSerialize an object into a JSON string.
writeIndentOutput an indentation string depending on the indentation level.
writeNewlineOutput a string representing a newline if in pretty printing mode.
writeSpaceOutput a string representing a space if in pretty printing mode.
Properties
serializeObject with properties corresponding to the serializable data types.
Functions
serialize.objectTransform an object into a JSON string.
serialize.arrayTransform an array into a JSON string.
serialize.stringTransform a string into a JSON string.
serialize.numberTransform a number into a JSON string.
serialize.booleanTransform a boolean into a JSON string.
serialize.objectTransform a date into a JSON string.

Properties

indent

{String} For “pretty” printing, the indent string will be used once for each indentation level.

space

{String} For “pretty” printing, the space string will be used after the “:” separating a name/value pair.

newline

{String} For “pretty” printing, the newline string will be used at the end of each name/value pair or array item.

level

{Integer} For “pretty” printing, this is incremented/decremented during serialization.

pretty

{Boolean} Serialize with extra whitespace for structure.  This is set by the write method.

nativeJSON

{Boolean} Does the browser support native json?

Constructor

ALKMaps.Format.JSON

Create a new parser for JSON.

Parameters

options{Object} An optional object whose properties will be set on this instance.

Functions

read

read: function(json,
filter)

Deserialize a json string.

Parameters

json{String} A JSON string
filter{Function} A function which will be called for every key and value at every level of the final result.  Each value will be replaced by the result of the filter function.  This can be used to reform generic objects into instances of classes, or to transform date strings into Date objects.

Returns

{Object} An object, array, string, or number .

write

write: function(value,
pretty)

Serialize an object into a JSON string.

Parameters

value{String} The object, array, string, number, boolean or date to be serialized.
pretty{Boolean} Structure the output with newlines and indentation.  Default is false.

Returns

{String} The JSON string representation of the input value.

writeIndent

writeIndent: function()

Output an indentation string depending on the indentation level.

Returns

{String} An appropriate indentation string.

writeNewline

writeNewline: function()

Output a string representing a newline if in pretty printing mode.

Returns

{String} A string representing a new line.

writeSpace

writeSpace: function()

Output a string representing a space if in pretty printing mode.

Returns

{String} A space.

Properties

serialize

Object with properties corresponding to the serializable data types.  Property values are functions that do the actual serializing.

Functions

serialize.object

Transform an object into a JSON string.

Parameters

object{Object} The object to be serialized.

Returns

{String} A JSON string representing the object.

serialize.array

Transform an array into a JSON string.

Parameters

array{Array} The array to be serialized

Returns

{String} A JSON string representing the array.

serialize.string

Transform a string into a JSON string.

Parameters

string{String} The string to be serialized

Returns

{String} A JSON string representing the string.

serialize.number

Transform a number into a JSON string.

Parameters

number{Number} The number to be serialized.

Returns

{String} A JSON string representing the number.

serialize.boolean

Transform a boolean into a JSON string.

Parameters

bool{Boolean} The boolean to be serialized.

Returns

{String} A JSON string representing the boolean.

serialize.object

Transform a date into a JSON string.

Parameters

date{Date} The date to be serialized.

Returns

{String} A JSON string representing the date.

read: function(json,
filter)
Deserialize a json string.
write: function(value,
pretty)
Serialize an object into a JSON string.
writeIndent: function()
Output an indentation string depending on the indentation level.
writeNewline: function()
Output a string representing a newline if in pretty printing mode.
writeSpace: function()
Output a string representing a space if in pretty printing mode.
Create a new parser for JSON.
Base class for format reading/writing a variety of formats.
Close