400 likes | 853 Views
JSON. By Marcus Lopes. Summary. What is JSON? JSON vs XML Using JSON JSON + AJAX JSON + JQuery. What is JSON?. Javascript Object Notation RFC 4627 Lightweight alternative to XML Built-in to Javascript. JSON Structure. Object
E N D
JSON By Marcus Lopes
Summary • What is JSON? • JSON vs XML • Using JSON • JSON + AJAX • JSON + JQuery
What is JSON? • Javascript Object Notation • RFC 4627 • Lightweight alternative to XML • Built-in to Javascript
JSON Structure • Object Pair of curly brackets containing zero or more name/value pairs.E.g.:{ "customer": { "name":"Marcus", "favoriteFood":"Burgers", "age": 21 } } To find out the name for this customer, you would write: customer.name
JSON Structure • Arrays Represented as square brackets and values are separated by comas. May contain 0 or more values.E.g.: {"customer": { "name":"Marcus", "favoriteFood":[ "Burgers","Fries","Bacon"], "age": 21 } } customer.favoriteFood[2] would return Bacon
JSON Structure • Numbers Similar to most programming languages E.g.: {"customer": { "name":"Marcus", "numbers":[23, 2, 1.35], "age": 21 } } To find the age, you can type customer.age
JSON Structure • Strings Work similar to the C family of programming languages A string begins and ends with quotation marks. E.g.: {"customer": { "name":"Marcus", "language":"Portuguese" } } To find out the language, you can type customer.language
Objects JSON objects can contain nested objects and functions: {"customer": { "myFunction":function (){alert("Hello world!");}, "numbers":[23, 2, 1.35], "age": 21 } } To call the method myFunction, you can type customer.myFunction(); JSON Structure
JSON Structure • Parsing The default encoding for JSON is UTF-8 • According to its documentation, JSON shall be encoded in Unicode. • In order to read JSON from an AJAX request, we must evaluate the JSON code using the eval() function. • Parenthesis must surround the code to be evaluated to avoid confusion between a code block and an object E.g.: eval("({price:20})")
Links Response: HTML, XML or JSON http://www.quirksmode.org/blog/archives/2005/12/the_ajax_respon.html JSON documentation http://www.json.org/ PHP json_encode documentation http://php.net/manual/en/function.json-encode.php