Tutorials References Exercises VideosMenu
Free WebsiteGet CertifiedPro

JS Tutorial

JS HOMEJS IntroductionJS Where ToJS OutputJS StatementsJS SyntaxJS CommentsJS VariablesJS LetJS ConstJS OperatorsJS ArithmeticJS AssignmentJS PrecedenceJS Data TypesJS FunctionsJS ObjectsJS EventsJS StringsJS String MethodsJS String SearchJS String TemplatesJS NumbersJS Number MethodsJS ArraysJS Array MethodsJS Array SortJS Array IterationJS Array ConstJS DatesJS Date FormatsJS Date Get MethodsJS Date Set MethodsJS MathJS RandomJS BooleansJS ComparisonsJS If ElseJS SwitchJS Loop ForJS Loop For InJS Loop For OfJS Loop WhileJS BreakJS IterablesJS SetsJS MapsJS TypeofJS Type ConversionJS BitwiseJS RegExpJS ErrorsJS ScopeJS HoistingJS Strict ModeJS this KeywordJS Arrow FunctionJS ClassesJS ModulesJS JSONJS DebuggingJS Style GuideJS Best PracticesJS MistakesJS PerformanceJS Reserved Words

JS Versions

JS VersionsJS 2009 (ES5)JS 2015 (ES6)JS 2016JS 2017JS 2018JS 2019JS 2020JS IE / EdgeJS History

JS Objects

Object DefinitionsObject PropertiesObject MethodsObject DisplayObject AccessorsObject ConstructorsObject PrototypesObject IterablesObject SetsObject MapsObject Reference

JS Functions

Function DefinitionsFunction ParametersFunction InvocationFunction CallFunction ApplyFunction BindFunction Closures

JS Classes

Class IntroClass InheritanceClass Static

JS Async

JS CallbacksJS AsynchronousJS PromisesJS Async/Await

JS HTML DOM

DOM IntroDOM MethodsDOM DocumentDOM ElementsDOM HTMLDOM FormsDOM CSSDOM AnimationsDOM EventsDOM Event ListenerDOM NavigationDOM NodesDOM CollectionsDOM Node Lists

JS Browser BOM

JS WindowJS ScreenJS LocationJS HistoryJS NavigatorJS Popup AlertJS TimingJS Cookies

JS Web APIs

Web API IntroWeb Forms APIWeb History APIWeb Storage APIWeb Worker APIWeb Fetch APIWeb Geolocation API

JS AJAX

AJAX IntroAJAX XMLHttpAJAX RequestAJAX ResponseAJAX XML FileAJAX PHPAJAX ASPAJAX DatabaseAJAX ApplicationsAJAX Examples

JS JSON

JSON IntroJSON SyntaxJSON vs XMLJSON Data TypesJSON ParseJSON StringifyJSON ObjectsJSON ArraysJSON ServerJSON PHPJSON HTMLJSON JSONP

JS vs jQuery

jQuery SelectorsjQuery HTMLjQuery CSSjQuery DOM

JS Graphics

JS GraphicsJS CanvasJS PlotlyJS Chart.jsJS Google ChartJS D3.js

JS Examples

JS ExamplesJS HTML DOMJS HTML InputJS HTML ObjectsJS HTML EventsJS BrowserJS EditorJS ExercisesJS QuizJS Certificate

JS References

JavaScript ObjectsHTML DOM Objects


JSON - Introduction

JSON

JSON stands for JavaScript Object Notation

JSON is a text format for storing and transporting data

JSON is "self-describing" and easy to understand

JSON Example

This example is a JSON string:

'{"name":"John", "age":30, "car":null}'

It defines an object with 3 properties:

  • name
  • age
  • car

Each property has a value.

If you parse the JSON string with a JavaScript program, you can access the data as an object:

let personName = obj.name;
let personAge = obj.age;

What is JSON?

  • JSON stands for JavaScript Object Notation
  • JSON is a lightweight data-interchange format
  • JSON is plain text written in JavaScript object notation
  • JSON is used to send data between computers
  • JSON is language independent *

*
The JSON syntax is derived from JavaScript object notation, but the JSON format is text only.

Code for reading and generating JSON exists in many programming languages.

The JSON format was originally specified by Douglas Crockford.



Why Use JSON?

The JSON format is syntactically similar to the code for creating JavaScript objects. Because of this, a JavaScript program can easily convert JSON data into JavaScript objects.

Since the format is text only, JSON data can easily be sent between computers, and used by any programming language.

JavaScript has a built in function for converting JSON strings into JavaScript objects:

JSON.parse()

JavaScript also has a built in function for converting an object into a JSON string:

JSON.stringify()

You can receive pure text from a server and use it as a JavaScript object.

You can send a JavaScript object to a server in pure text format.

You can work with data as JavaScript objects, with no complicated parsing and translations.


Storing Data

When storing data, the data has to be a certain format, and regardless of where you choose to store it, text is always one of the legal formats.

JSON makes it possible to store JavaScript objects as text.