JSON
Does Ajax need XML? The X in Ajax once stood for XML Now x is more like ? Whatever that’s appropriate XML has its advantages and disadvantages Very expressive, but too noisy, large, slow…
JSON JavaScript Object Notation It is intended to be minimal It is a textual notation of data JavaScript is a superset of JSON YAML is a superset of JSON YAML decoder and JavaScript interpreter can be used as JSON decoder
Source: http:www/json.org What’s in JSON Source: http:www/json.org
Source: http:www/json.org String Strings Any double quoted Unicode character Double quote escaped using \ Empty string represented by "" Source: http:www/json.org
Source: http:www/json.org Number Numbers Integer, real, scientific Use null for invalid/infinity Source: http:www/json.org
Source: http:www/json.org Object Objects: More of a hashmap notation {"keyname": JSONValue, "keyname": JSONValue,…} JSONValue may be any of the JSON value types including other objects Source: http:www/json.org
Source: http:www/json.org Arrays Arrays Sequence of values [JSONValue, JSONValue, JSONValue, …] Index is decided by implementation (like Java can use 0, VB can use 1, JSON doesn’t care) JSONValue may be any JSON value type including objects and arrays Source: http:www/json.org
Using JSON to Populate a Page
Concerns with eval eval sends the JSON text (or any text) to the Java compiler May not be safe Use only if trusted source What’s the alternative parseJSON only parses JSON text
parseJSON Available from http://www.json.org/json.js Parses only JSON text and is fast
Convert to JSON toJSONString() converts an object to JSON
More Convenience More convenient processing functions are sprouting up There is also proposal for JSONRequest object to be standardized by browsers http://json.org/JSONRequest.html