Web Kokua Banner Image


Objects & JSON

The Object type represents one of JavaScript's data types. It is used to store various keyed collections and more complex entities. Objects can be created using the Object() constructor or the object initializer / literal syntax.

Objects in JavaScript, just as in many other programming languages, can be compared to objects in real life. In JavaScript, an object is a standalone entity, with properties and type. Compare it with a cup, for example. A cup is an object, with properties. A cup has a color, a design, weight, a material it is made of, etc. The same way, JavaScript objects can have properties, which define their characteristics.

In addition to objects that are predefined in the browser, you can define your own objects.

JSON is an acronym for JavaScript Object Notation. It is a syntax for serializing objects; it is a means for conveying more complex hierarchal data structures than simple name/value pairs can.


Objects vs. JSON

A Javascript Object is a programming construct. Just like objects in many object oriented languages, they can contain data and methods. JSON on the other hand is meant to be used to store structured data and allow that structured data to be transmited.

Unlike most global objects, JSON is not a constructor. You cannot use it with the new operator or invoke the JSON object as a function. All properties and methods of JSON are static (just like the Math object).

JavaScript and JSON differences

JSON is a syntax for serializing objects, arrays, numbers, strings, booleans, and null. It is based upon JavaScript syntax, but is distinct from JavaScript: most of JavaScript is not JSON. For example:

Objects and Arrays

Property names must be double-quoted strings; trailing commas are forbidden.

Numbers

Leading zeros are prohibited. A decimal point must be followed by at least one digit. NaN and Infinity are unsupported.

Any JSON text is a valid JavaScript expression, but only after the JSON superset revision. Before the revision, U+2028 LINE SEPARATOR and U+2029 PARAGRAPH SEPARATOR are allowed in string literals and property keys in JSON; but the same use in JavaScript string literals is a SyntaxError.

Other differences include allowing only double-quoted strings and no support for undefined or comments. For those who wish to use a more human-friendly configuration format based on JSON, there is JSON5, used by the Babel compiler, and the more commonly used YAML.

Object literal syntax vs. JSON

The object literal syntax is not the same as the JavaScript Object Notation (JSON). Although they look similar, there are differences between them:

JSON is a strict subset of the object literal syntax, meaning that every valid JSON text can be parsed as an object literal, and would likely not cause syntax errors. The only exception is that the object literal syntax prohibits duplicate __proto__ keys, which does not apply to JSON.parse(). The latter treats __proto__ like a normal property and takes the last occurrence as the property's value. The only time when the object value they represent (a.k.a. their semantic) differ is also when the source contains the __proto__ key — for object literals, it sets the object's prototype; for JSON, it's a normal property.


Object Creation

There are several ways to create a javascript object

// THE FOLLOWING EXAMPLES STORE AN EMPTY OBJECT IN myObj: const myObj = {}; const myObj = new Object(); const myObj = new Object(undefined); const myObj = new Object(null);

Object Methods

Javascript objects, in addition to being able to define structured data, can have methods that use that data in useful ways.

The following example is an object that represents a car. There are several methods that the object has that could be useful.

function show_method_output_01(result_name) { let divResult = document.getElementById(result_name); let outStr = ""; // JAVASCRIPT CAR OBJECT let jso_car = {}; jso_car.Make = "Toyota"; jso_car.Model = "Tacoma"; jso_car.TankSize = 18.2; jso_car.TankLevel = 10; jso_car.MPG = 24; jso_car.MilesCanTravel = function () { return this.TankLevel * this.MPG; }; jso_car.CurrentTankLevel = function () { return this.TankLevel / this.TankSize; } outStr += "Car: " + jso_car.Make + " " + jso_car.Model + "<br/>"; outStr += "Gas Tank Capacity: " + jso_car.TankSize + " gallon tank<br/>"; outStr += "Current Number of Gallons in Tank: " + jso_car.TankLevel + " gallons<br/>"; outStr += "Tank Level: " + (jso_car.CurrentTankLevel() * 100).toFixed(2) + "% Full<br/>"; outStr += "Estimated distance in miles it can travel: "+ jso_car.MilesCanTravel() +" miles."; divResult.innerHTML = outStr; }
How Far Can It Go

Response


Hierarchical Data Structures

Both JS Objects and JSON allow for the creation of complex hierarchal data structures. With regards to JSON, this enables a much more robust means of sending data to and from the server than the traditional means of using simple name/value pairs conventional in traditional client-server IO via GET and POST.

Show Employee

Response


Script 2

Response


ACME Widget Company

In the following example we have a fictional company called ACME Widgets. ACME is a nationwide company, but we're looking specifically at ACME's West Coast division.

{ Company : "", Divisions : [ { DivisionName : "", States : [ { StateName: "", StateDivision : [ { StateDivisionName : "", StateSubdivision : [ { SubdivisionName : "", SubdivisionArea : [ { AreaName : "", RetailOutlet : [ { OutletName : "", Q1_Sales : 0.0, Q2_Sales : 0.0, Q3_Sales : 0.0, Q4_Sales : 0.0 }, ] }, ] }, ] }, ] }, ] }, ] }
{ Company : "ACME Widgets", Divisions : [ { DivisionName : "West Coast Division", States : [ { StateName: "Washington", StateDivision : [ { StateDivisionName : "West Washington", StateSubdivision : [ { SubdivisionName : "Seattle", SubdivisionArea : [ { AreaName : "North Seattle", RetailOutlet : [ { OutletName : "", Q1_Sales : 9.9, Q2_Sales : 10.1, Q3_Sales : 10.8, Q4_Sales : 11.2 }, { OutletName : "", Q1_Sales : 9.4, Q2_Sales : 10.2, Q3_Sales : 10.7, Q4_Sales : 10.9 }, { OutletName : "", Q1_Sales : 7.7, Q2_Sales : 8.3, Q3_Sales : 8.4, Q4_Sales : 8.9 }, { OutletName : "", Q1_Sales : 8.3, Q2_Sales : 8.6, Q3_Sales : 8.7, Q4_Sales : 9.1 }, { OutletName : "", Q1_Sales : 6.8, Q2_Sales : 7.8, Q3_Sales : 8.2, Q4_Sales : 8.8 } ] }, { AreaName : "South Seattle", RetailOutlet : [ { OutletName : "", Q1_Sales : 8.3, Q2_Sales : 8.8, Q3_Sales : 9.0, Q4_Sales : 9.6 }, { OutletName : "", Q1_Sales : 8.9, Q2_Sales : 9.1, Q3_Sales : 9.3, Q4_Sales : 9.9 }, { OutletName : "", Q1_Sales : 7.2, Q2_Sales : 7.4, Q3_Sales : 8.1, Q4_Sales : 8.6 }, { OutletName : "", Q1_Sales : 6.4, Q2_Sales : 6.9, Q3_Sales : 7.4, Q4_Sales : 7.9 }, { OutletName : "", Q1_Sales : 7.2, Q2_Sales : 8.2, Q3_Sales : 8.9, Q4_Sales : 9.2 } ] }, { AreaName : "East Seattle", RetailOutlet : [ { OutletName : "", Q1_Sales : 8.9, Q2_Sales : 9.1, Q3_Sales : 9.8, Q4_Sales : 10.2 }, { OutletName : "", Q1_Sales : 8.4, Q2_Sales : 9.2, Q3_Sales : 9.7, Q4_Sales : 10.9 }, { OutletName : "", Q1_Sales : 6.7, Q2_Sales : 7.3, Q3_Sales : 7.4, Q4_Sales : 7.9 }, { OutletName : "", Q1_Sales : 7.3, Q2_Sales : 7.6, Q3_Sales : 7.7, Q4_Sales : 8.1 }, { OutletName : "", Q1_Sales : 5.8, Q2_Sales : 6.8, Q3_Sales : 7.2, Q4_Sales : 7.8 } ] } ] }, { SubdivisionName : "Tacoma", SubdivisionArea : [ { AreaName : "West Tacoma", RetailOutlet : [ { OutletName : "", Q1_Sales : 8.8, Q2_Sales : 8.7, Q3_Sales : 9.2, Q4_Sales : 9.9 }, { OutletName : "", Q1_Sales : 7.3, Q2_Sales : 7.6, Q3_Sales : 8.3, Q4_Sales : 8.9 }, { OutletName : "", Q1_Sales : 6.5, Q2_Sales : 6.6, Q3_Sales : 7.1, Q4_Sales : 7.8 }, { OutletName : "", Q1_Sales : 6.6, Q2_Sales : 7.9, Q3_Sales : 8.3, Q4_Sales : 8.8 }, { OutletName : "", Q1_Sales : 5.2, Q2_Sales : 6.2, Q3_Sales : 6.9, Q4_Sales : 7.3 } ] }, { AreaName : "East Tacoma", RetailOutlet : [ { OutletName : "", Q1_Sales : 7.6, Q2_Sales : 8.0, Q3_Sales : 8.4, Q4_Sales : 9.2 }, { OutletName : "", Q1_Sales : 6.5, Q2_Sales : 7.1, Q3_Sales : 7.9, Q4_Sales : 8.1 }, { OutletName : "", Q1_Sales : 7.6, Q2_Sales : 8.2, Q3_Sales : 8.5, Q4_Sales : 9.2 }, { OutletName : "", Q1_Sales : 4.2, Q2_Sales : 5.0, Q3_Sales : 5.9, Q4_Sales : 6.7 }, { OutletName : "", Q1_Sales : 5.7, Q2_Sales : 6.2, Q3_Sales : 6.9, Q4_Sales : 7.3 } ] } ] } ] }, { StateDivisionName : "East Washington", StateSubdivision : [ { SubdivisionName : "Spokane", SubdivisionArea : [ { AreaName : "East Spokane", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 3.5, Q2_Sales : 4.1, Q3_Sales : 3.9, Q4_Sales : 4.0 }, { OutletName : "Widgets R Us", Q1_Sales : 3.7, Q2_Sales : 4.2, Q3_Sales : 3.8, Q4_Sales : 3.9 }, { OutletName : "Wigetopia", Q1_Sales : 4.2, Q2_Sales : 4.1, Q3_Sales : 3.8, Q4_Sales : 3.7 }, { OutletName : "The Widget Center", Q1_Sales : 6.1, Q2_Sales : 6.2, Q3_Sales : 6.2, Q4_Sales : 6.4 }, { OutletName : "Widgets N Stuff", Q1_Sales : 2.9, Q2_Sales : 3.1, Q3_Sales : 3.2, Q4_Sales : 3.4 } ] }, { AreaName : "West Spokane", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 3.1, Q2_Sales : 3.5, Q3_Sales : 3.9, Q4_Sales : 4.1 }, { OutletName : "Widgets R Us", Q1_Sales : 3.5, Q2_Sales : 3.9, Q3_Sales : 4.1, Q4_Sales : 4.3 }, { OutletName : "Wigetopia", Q1_Sales : 2.6, Q2_Sales : 2.8, Q3_Sales : 3.0, Q4_Sales : 3.3 }, { OutletName : "The Widget Center", Q1_Sales : 4.1, Q2_Sales : 4.3, Q3_Sales : 4.8, Q4_Sales : 5.0 }, { OutletName : "Widgets N Stuff", Q1_Sales : 3.8, Q2_Sales : 4.0, Q3_Sales : 4.9, Q4_Sales : 5.1 } ] } ] }, { SubdivisionName : "Pullman", SubdivisionArea : [ { AreaName : "North Pullman", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 2.6, Q2_Sales : 2.8, Q3_Sales : 3.1, Q4_Sales : 3.3 }, { OutletName : "Widgets R Us", Q1_Sales : 2.4, Q2_Sales : 2.6, Q3_Sales : 2.9, Q4_Sales : 3.0 }, { OutletName : "Wigetopia", Q1_Sales : 1.7, Q2_Sales : 2.0, Q3_Sales : 2.2, Q4_Sales : 2.3 }, { OutletName : "The Widget Center", Q1_Sales : 2.5, Q2_Sales : 3.1, Q3_Sales : 3.4, Q4_Sales : 3.6 }, { OutletName : "Widgets N Stuff", Q1_Sales : 1.6, Q2_Sales : 2.0, Q3_Sales : 2.1, Q4_Sales : 2.4 } ] }, { AreaName : "South Pullman", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 2.3, Q2_Sales : 2.3, Q3_Sales : 2.4, Q4_Sales : 2.5 }, { OutletName : "Widgets R Us", Q1_Sales : 3.4, Q2_Sales : 3.5, Q3_Sales : 3.6, Q4_Sales : 3.7 }, { OutletName : "Wigetopia", Q1_Sales : 2.2, Q2_Sales : 2.3, Q3_Sales : 2.5, Q4_Sales : 2.6 }, { OutletName : "The Widget Center", Q1_Sales : 1.6, Q2_Sales : 1.7, Q3_Sales : 1.8, Q4_Sales : 2.0 }, { OutletName : "Widgets N Stuff", Q1_Sales : 1.8, Q2_Sales : 2.0, Q3_Sales : 2.1, Q4_Sales : 2.2 } ] } ] } ] } ] }, { StateName: "Oregon", StateDivision : [ { StateDivisionName : "Northwest Oregon", StateSubdivision : [ { SubdivisionName : "Portland", SubdivisionArea : [ { AreaName : "North Portland", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 3.1, Q2_Sales : 3.3, Q3_Sales : 3.6, Q4_Sales : 3.6 }, { OutletName : "Widgets R Us", Q1_Sales : 2.6, Q2_Sales : 2.7, Q3_Sales : 2.8, Q4_Sales : 2.7 }, { OutletName : "Wigetopia", Q1_Sales : 2.1, Q2_Sales : 2.4, Q3_Sales : 2.5, Q4_Sales : 2.7 }, { OutletName : "The Widget Center", Q1_Sales : 1.3, Q2_Sales : 1.4, Q3_Sales : 1.6, Q4_Sales : 1.7 }, { OutletName : "Widgets N Stuff", Q1_Sales : 1.2, Q2_Sales : 1.3, Q3_Sales : 1.5, Q4_Sales : 1.7 } ] }, { AreaName : "South Portland", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 2.1, Q2_Sales : 2.3, Q3_Sales : 2.5, Q4_Sales : 2.7 }, { OutletName : "Widgets R Us", Q1_Sales : 2.2, Q2_Sales : 2.3, Q3_Sales : 2.4, Q4_Sales : 2.6 }, { OutletName : "Wigetopia", Q1_Sales : 3.1, Q2_Sales : 3.2, Q3_Sales : 3.3, Q4_Sales : 3.4 }, { OutletName : "The Widget Center", Q1_Sales : 2.3, Q2_Sales : 2.4, Q3_Sales : 2.6, Q4_Sales : 2.8 }, { OutletName : "Widgets N Stuff", Q1_Sales : 1.1, Q2_Sales : 1.6, Q3_Sales : 2.2, Q4_Sales : 2.6 } ] } ] }, { SubdivisionName : "Salem", SubdivisionArea : [ { AreaName : "West Salem", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 1.1, Q2_Sales : 1.3, Q3_Sales : 1.5, Q4_Sales : 1.7 }, { OutletName : "Widgets R Us", Q1_Sales : 1.2, Q2_Sales : 1.5, Q3_Sales : 1.4, Q4_Sales : 1.6 }, { OutletName : "Wigetopia", Q1_Sales : 1.3, Q2_Sales : 1.5, Q3_Sales : 1.6, Q4_Sales : 1.8 }, { OutletName : "The Widget Center", Q1_Sales : 2.1, Q2_Sales : 2.3, Q3_Sales : 2.4, Q4_Sales : 2.5 }, { OutletName : "Widgets N Stuff", Q1_Sales : 1.4, Q2_Sales : 1.7, Q3_Sales : 2.2, Q4_Sales : 2.5 } ] }, { AreaName : "East Salem", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 2.1, Q2_Sales : 2.2, Q3_Sales : 2.4, Q4_Sales : 2.4 }, { OutletName : "Widgets R Us", Q1_Sales : 1.4, Q2_Sales : 1.6, Q3_Sales : 1.7, Q4_Sales : 2.0 }, { OutletName : "Wigetopia", Q1_Sales : 2.2, Q2_Sales : 2.4, Q3_Sales : 2.6, Q4_Sales : 2.7 }, { OutletName : "The Widget Center", Q1_Sales : 1.5, Q2_Sales : 1.7, Q3_Sales : 1.9, Q4_Sales : 2.1 }, { OutletName : "Widgets N Stuff", Q1_Sales : 1.7, Q2_Sales : 1.9, Q3_Sales : 2.1, Q4_Sales : 2.4 } ] } ] } ] }, { StateDivisionName : "Southwest Oregon", StateSubdivision : [ { SubdivisionName : "Eugene", SubdivisionArea : [ { AreaName : "West Eugene", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 2.2, Q2_Sales : 2.3, Q3_Sales : 2.4, Q4_Sales : 2.5 }, { OutletName : "Widgets R Us", Q1_Sales : 3.3, Q2_Sales : 3.5, Q3_Sales : 3.6, Q4_Sales : 3.7 }, { OutletName : "Wigetopia", Q1_Sales : 2.2, Q2_Sales : 2.3, Q3_Sales : 2.5, Q4_Sales : 2.6 }, { OutletName : "The Widget Center", Q1_Sales : 1.5, Q2_Sales : 1.7, Q3_Sales : 1.8, Q4_Sales : 2.0 }, { OutletName : "Widgets N Stuff", Q1_Sales : 1.9, Q2_Sales : 2.0, Q3_Sales : 2.1, Q4_Sales : 2.2 } ] }, { AreaName : "East Eugene", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 3.1, Q2_Sales : 3.5, Q3_Sales : 3.9, Q4_Sales : 4.1 }, { OutletName : "Widgets R Us", Q1_Sales : 3.5, Q2_Sales : 3.9, Q3_Sales : 4.1, Q4_Sales : 4.3 }, { OutletName : "Wigetopia", Q1_Sales : 2.6, Q2_Sales : 2.8, Q3_Sales : 3.0, Q4_Sales : 3.3 }, { OutletName : "The Widget Center", Q1_Sales : 4.1, Q2_Sales : 4.3, Q3_Sales : 4.8, Q4_Sales : 5.0 }, { OutletName : "Widgets N Stuff", Q1_Sales : 3.8, Q2_Sales : 4.0, Q3_Sales : 4.9, Q4_Sales : 5.1 } ] } ] }, { SubdivisionName : "Medford", SubdivisionArea : [ { AreaName : "Medford Proper", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 1.1, Q2_Sales : 1.3, Q3_Sales : 1.5, Q4_Sales : 1.7 }, { OutletName : "Widgets R Us", Q1_Sales : 1.2, Q2_Sales : 1.5, Q3_Sales : 1.4, Q4_Sales : 1.6 }, { OutletName : "Wigetopia", Q1_Sales : 1.3, Q2_Sales : 1.5, Q3_Sales : 1.6, Q4_Sales : 1.8 }, { OutletName : "The Widget Center", Q1_Sales : 2.1, Q2_Sales : 2.3, Q3_Sales : 2.4, Q4_Sales : 2.5 }, { OutletName : "Widgets N Stuff", Q1_Sales : 1.4, Q2_Sales : 1.7, Q3_Sales : 2.2, Q4_Sales : 2.5 } ] }, { AreaName : "Ashland", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 1.1, Q2_Sales : 1.3, Q3_Sales : 1.5, Q4_Sales : 1.7 }, { OutletName : "Widgets R Us", Q1_Sales : 1.2, Q2_Sales : 1.5, Q3_Sales : 1.4, Q4_Sales : 1.6 }, { OutletName : "Wigetopia", Q1_Sales : 1.3, Q2_Sales : 1.5, Q3_Sales : 1.6, Q4_Sales : 1.8 }, { OutletName : "The Widget Center", Q1_Sales : 2.1, Q2_Sales : 2.3, Q3_Sales : 2.4, Q4_Sales : 2.5 }, { OutletName : "Widgets N Stuff", Q1_Sales : 1.4, Q2_Sales : 1.7, Q3_Sales : 2.2, Q4_Sales : 2.5 } ] } ] } ] }, { StateDivisionName : "East Oregaon", StateSubdivision : [ { SubdivisionName : "Bend", SubdivisionArea : [ { AreaName : "North Bend", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 2.3, Q2_Sales : 2.3, Q3_Sales : 2.4, Q4_Sales : 2.5 }, { OutletName : "Widgets R Us", Q1_Sales : 3.4, Q2_Sales : 3.5, Q3_Sales : 3.6, Q4_Sales : 3.7 }, { OutletName : "Wigetopia", Q1_Sales : 2.2, Q2_Sales : 2.3, Q3_Sales : 2.5, Q4_Sales : 2.6 }, { OutletName : "The Widget Center", Q1_Sales : 1.6, Q2_Sales : 1.7, Q3_Sales : 1.8, Q4_Sales : 2.0 }, { OutletName : "Widgets N Stuff", Q1_Sales : 1.8, Q2_Sales : 2.0, Q3_Sales : 2.1, Q4_Sales : 2.2 } ] }, { AreaName : "South Bend", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 1.3, Q2_Sales : 1.3, Q3_Sales : 1.4, Q4_Sales : 1.5 }, { OutletName : "Widgets R Us", Q1_Sales : 2.4, Q2_Sales : 2.5, Q3_Sales : 2.6, Q4_Sales : 2.7 }, { OutletName : "Wigetopia", Q1_Sales : 2.2, Q2_Sales : 2.3, Q3_Sales : 2.5, Q4_Sales : 2.6 }, { OutletName : "The Widget Center", Q1_Sales : 0.6, Q2_Sales : 0.7, Q3_Sales : 1.2, Q4_Sales : 1.4 }, { OutletName : "Widgets N Stuff", Q1_Sales : 1.9, Q2_Sales : 2.2, Q3_Sales : 2.2, Q4_Sales : 2.4 } ] } ] }, { SubdivisionName : "Baker City", SubdivisionArea : [ { AreaName : "West City", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 1.2, Q2_Sales : 1.3, Q3_Sales : 1.5, Q4_Sales : 1.7 }, { OutletName : "Widgets R Us", Q1_Sales : 1.3, Q2_Sales : 1.3, Q3_Sales : 1.4, Q4_Sales : 1.6 }, { OutletName : "Wigetopia", Q1_Sales : 1.4, Q2_Sales : 1.5, Q3_Sales : 1.6, Q4_Sales : 1.8 }, { OutletName : "The Widget Center", Q1_Sales : 2.2, Q2_Sales : 2.3, Q3_Sales : 2.4, Q4_Sales : 2.5 }, { OutletName : "Widgets N Stuff", Q1_Sales : 1.3, Q2_Sales : 1.4, Q3_Sales : 2.1, Q4_Sales : 2.2 } ] }, { AreaName : "East City", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 1.1, Q2_Sales : 1.3, Q3_Sales : 1.5, Q4_Sales : 1.7 }, { OutletName : "Widgets R Us", Q1_Sales : 1.2, Q2_Sales : 1.5, Q3_Sales : 1.4, Q4_Sales : 1.6 }, { OutletName : "Wigetopia", Q1_Sales : 1.2, Q2_Sales : 1.3, Q3_Sales : 1.4, Q4_Sales : 1.6 }, { OutletName : "The Widget Center", Q1_Sales : 2.1, Q2_Sales : 2.3, Q3_Sales : 2.4, Q4_Sales : 2.5 }, { OutletName : "Widgets N Stuff", Q1_Sales : 1.3, Q2_Sales : 1.4, Q3_Sales : 2.0, Q4_Sales : 2.1 } ] } ] } ] } ] }, { StateName: "California", StateDivision : [ { StateDivisionName : "Northern California", StateSubdivision : [ { SubdivisionName : "Trinity", SubdivisionArea : [ { AreaName : "Shasta", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 1.1, Q2_Sales : 1.2, Q3_Sales : 1.4, Q4_Sales : 1.5 }, { OutletName : "Widgets R Us", Q1_Sales : 1.2, Q2_Sales : 1.2, Q3_Sales : 1.3, Q4_Sales : 1.4 }, { OutletName : "Wigetopia", Q1_Sales : 1.3, Q2_Sales : 1.4, Q3_Sales : 1.4, Q4_Sales : 1.5 }, { OutletName : "The Widget Center", Q1_Sales : 2.1, Q2_Sales : 2.2, Q3_Sales : 2.3, Q4_Sales : 2.4 }, { OutletName : "Widgets N Stuff", Q1_Sales : 1.2, Q2_Sales : 1.3, Q3_Sales : 2.4, Q4_Sales : 2.2 } ] }, { AreaName : "Redding", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 1.1, Q2_Sales : 1.2, Q3_Sales : 1.3, Q4_Sales : 1.3 }, { OutletName : "Widgets R Us", Q1_Sales : 1.3, Q2_Sales : 1.4, Q3_Sales : 1.4, Q4_Sales : 1.4 }, { OutletName : "Wigetopia", Q1_Sales : 1.2, Q2_Sales : 1.2, Q3_Sales : 1.3, Q4_Sales : 1.3 }, { OutletName : "The Widget Center", Q1_Sales : 0.8, Q2_Sales : 1.0, Q3_Sales : 1.1, Q4_Sales : 1.1 }, { OutletName : "Widgets N Stuff", Q1_Sales : 1.0, Q2_Sales : 1.1, Q3_Sales : 1.1, Q4_Sales : 1.2 } ] }, { AreaName : "Crecent City", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 1.2, Q2_Sales : 1.1, Q3_Sales : 1.2, Q4_Sales : 1.2 }, { OutletName : "Widgets R Us", Q1_Sales : 2.0, Q2_Sales : 2.0, Q3_Sales : 2.0, Q4_Sales : 1.9 }, { OutletName : "Wigetopia", Q1_Sales : 1.2, Q2_Sales : 1.2, Q3_Sales : 1.2, Q4_Sales : 1.3 }, { OutletName : "The Widget Center", Q1_Sales : 0.8, Q2_Sales : 0.9, Q3_Sales : 1.0, Q4_Sales : 1.1 }, { OutletName : "Widgets N Stuff", Q1_Sales : 1.1, Q2_Sales : 1.2, Q3_Sales : 1.2, Q4_Sales : 1.3 } ] } ] }, { SubdivisionName : "Bluff Country", SubdivisionArea : [ { AreaName : "Chico", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 1.2, Q2_Sales : 1.2, Q3_Sales : 1.3, Q4_Sales : 1.3 }, { OutletName : "Widgets R Us", Q1_Sales : 1.3, Q2_Sales : 1.4, Q3_Sales : 1.4, Q4_Sales : 1.4 }, { OutletName : "Wigetopia", Q1_Sales : 1.1, Q2_Sales : 1.2, Q3_Sales : 1.3, Q4_Sales : 1.3 }, { OutletName : "The Widget Center", Q1_Sales : 0.9, Q2_Sales : 1.0, Q3_Sales : 1.1, Q4_Sales : 1.1 }, { OutletName : "Widgets N Stuff", Q1_Sales : 1.0, Q2_Sales : 1.1, Q3_Sales : 1.1, Q4_Sales : 1.2 } ] }, { AreaName : "Paradise", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 1.1, Q2_Sales : 1.2, Q3_Sales : 1.3, Q4_Sales : 1.3 }, { OutletName : "Widgets R Us", Q1_Sales : 1.3, Q2_Sales : 1.4, Q3_Sales : 1.4, Q4_Sales : 1.4 }, { OutletName : "Wigetopia", Q1_Sales : 1.2, Q2_Sales : 1.2, Q3_Sales : 1.3, Q4_Sales : 1.3 }, { OutletName : "The Widget Center", Q1_Sales : 0.8, Q2_Sales : 1.0, Q3_Sales : 1.1, Q4_Sales : 1.1 }, { OutletName : "Widgets N Stuff", Q1_Sales : 1.0, Q2_Sales : 1.1, Q3_Sales : 1.1, Q4_Sales : 1.2 } ] }, { AreaName : "Oroville", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 0.9, Q2_Sales : 1.0, Q3_Sales : 1.1, Q4_Sales : 1.0 }, { OutletName : "Widgets R Us", Q1_Sales : 1.3, Q2_Sales : 1.4, Q3_Sales : 1.4, Q4_Sales : 1.4 }, { OutletName : "Wigetopia", Q1_Sales : 1.1, Q2_Sales : 1.1, Q3_Sales : 1.2, Q4_Sales : 1.3 }, { OutletName : "The Widget Center", Q1_Sales : 0.8, Q2_Sales : 0.9, Q3_Sales : 1.0, Q4_Sales : 1.1 }, { OutletName : "Widgets N Stuff", Q1_Sales : 1.0, Q2_Sales : 1.1, Q3_Sales : 1.1, Q4_Sales : 1.2 } ] } ] }, { SubdivisionName : "Sacramento", SubdivisionArea : [ { AreaName : "North Sacramento", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 2.1, Q2_Sales : 2.3, Q3_Sales : 2.5, Q4_Sales : 2.7 }, { OutletName : "Widgets R Us", Q1_Sales : 3.3, Q2_Sales : 3.5, Q3_Sales : 3.7, Q4_Sales : 4.0 }, { OutletName : "Wigetopia", Q1_Sales : 2.2, Q2_Sales : 2.4, Q3_Sales : 2.6, Q4_Sales : 2.8 }, { OutletName : "The Widget Center", Q1_Sales : 4.2, Q2_Sales : 4.4, Q3_Sales : 4.6, Q4_Sales : 4.7 }, { OutletName : "Widgets N Stuff", Q1_Sales : 1.6, Q2_Sales : 1.8, Q3_Sales : 2.1, Q4_Sales : 2.3 } ] }, { AreaName : "South Sacramento", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 3.1, Q2_Sales : 3.3, Q3_Sales : 3.5, Q4_Sales : 3.7 }, { OutletName : "Widgets R Us", Q1_Sales : 4.3, Q2_Sales : 4.5, Q3_Sales : 4.7, Q4_Sales : 5.0 }, { OutletName : "Wigetopia", Q1_Sales : 3.2, Q2_Sales : 3.4, Q3_Sales : 3.6, Q4_Sales : 3.8 }, { OutletName : "The Widget Center", Q1_Sales : 5.2, Q2_Sales : 5.4, Q3_Sales : 5.6, Q4_Sales : 5.7 }, { OutletName : "Widgets N Stuff", Q1_Sales : 2.6, Q2_Sales : 2.8, Q3_Sales : 3.1, Q4_Sales : 3.3 } ] } ] } ] }, { StateDivisionName : "Bay Area", StateSubdivision : [ { SubdivisionName : "North Bay", SubdivisionArea : [ { AreaName : "Sausalito", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 2.2, Q2_Sales : 2.3, Q3_Sales : 2.6, Q4_Sales : 2.7 }, { OutletName : "Widgets R Us", Q1_Sales : 3.4, Q2_Sales : 3.5, Q3_Sales : 3.8, Q4_Sales : 4.1 }, { OutletName : "Wigetopia", Q1_Sales : 2.3, Q2_Sales : 2.4, Q3_Sales : 2.5, Q4_Sales : 2.7 }, { OutletName : "The Widget Center", Q1_Sales : 4.3, Q2_Sales : 4.4, Q3_Sales : 4.5, Q4_Sales : 4.7 }, { OutletName : "Widgets N Stuff", Q1_Sales : 1.7, Q2_Sales : 1.8, Q3_Sales : 2.1, Q4_Sales : 2.3 } ] }, { AreaName : "San Rafael", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 2.3, Q2_Sales : 2.3, Q3_Sales : 2.6, Q4_Sales : 2.7 }, { OutletName : "Widgets R Us", Q1_Sales : 3.5, Q2_Sales : 3.5, Q3_Sales : 3.8, Q4_Sales : 4.1 }, { OutletName : "Wigetopia", Q1_Sales : 2.4, Q2_Sales : 2.4, Q3_Sales : 2.5, Q4_Sales : 2.7 }, { OutletName : "The Widget Center", Q1_Sales : 4.4, Q2_Sales : 4.5, Q3_Sales : 4.5, Q4_Sales : 4.7 }, { OutletName : "Widgets N Stuff", Q1_Sales : 1.8, Q2_Sales : 1.9, Q3_Sales : 2.1, Q4_Sales : 2.3 } ] }, { AreaName : "San Anselmo", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 1.3, Q2_Sales : 1.5, Q3_Sales : 1.9, Q4_Sales : 2.0 }, { OutletName : "Widgets R Us", Q1_Sales : 2.5, Q2_Sales : 2.5, Q3_Sales : 2.5, Q4_Sales : 3.0 }, { OutletName : "Wigetopia", Q1_Sales : 2.4, Q2_Sales : 2.4, Q3_Sales : 2.5, Q4_Sales : 2.7 }, { OutletName : "The Widget Center", Q1_Sales : 3.4, Q2_Sales : 4.1, Q3_Sales : 4.3, Q4_Sales : 4.5 }, { OutletName : "Widgets N Stuff", Q1_Sales : 2.8, Q2_Sales : 2.9, Q3_Sales : 3.1, Q4_Sales : 3.1 } ] } ] }, { SubdivisionName : "Penninsula", SubdivisionArea : [ { AreaName : "San Francisco", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 10.1, Q2_Sales : 10.3, Q3_Sales : 10.5, Q4_Sales : 10.7 }, { OutletName : "Widgets R Us", Q1_Sales : 9.5, Q2_Sales : 10.0, Q3_Sales : 10.1, Q4_Sales : 10.4 }, { OutletName : "Wigetopia", Q1_Sales : 12.0, Q2_Sales : 11.8, Q3_Sales : 12.1, Q4_Sales : 12.3 }, { OutletName : "The Widget Center", Q1_Sales : 9.8, Q2_Sales : 10.0, Q3_Sales : 10.1, Q4_Sales : 10.4 }, { OutletName : "Widgets N Stuff", Q1_Sales : 11.4, Q2_Sales : 11.6, Q3_Sales : 12.1, Q4_Sales : 12.3 } ] }, { AreaName : "Daly City", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 9.1, Q2_Sales : 9.3, Q3_Sales : 9.5, Q4_Sales : 9.7 }, { OutletName : "Widgets R Us", Q1_Sales : 9.5, Q2_Sales : 9.8, Q3_Sales : 9.9, Q4_Sales : 9.4 }, { OutletName : "Wigetopia", Q1_Sales : 10.0, Q2_Sales : 10.4, Q3_Sales : 10.1, Q4_Sales : 9.9 }, { OutletName : "The Widget Center", Q1_Sales : 9.8, Q2_Sales : 10.0, Q3_Sales : 10.1, Q4_Sales : 10.1 }, { OutletName : "Widgets N Stuff", Q1_Sales : 10.4, Q2_Sales : 10.6, Q3_Sales : 10.5, Q4_Sales : 10.3 } ] }, { AreaName : "San Bruno", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 10.1, Q2_Sales : 10.3, Q3_Sales : 10.3, Q4_Sales : 10.4 }, { OutletName : "Widgets R Us", Q1_Sales : 8.0, Q2_Sales : 8.2, Q3_Sales : 8.2, Q4_Sales : 8.2 }, { OutletName : "Wigetopia", Q1_Sales : 7.2, Q2_Sales : 7.3, Q3_Sales : 7.3, Q4_Sales : 7.4 }, { OutletName : "The Widget Center", Q1_Sales : 9.5, Q2_Sales : 9.7, Q3_Sales : 9.8, Q4_Sales : 10.1 }, { OutletName : "Widgets N Stuff", Q1_Sales : 6.2, Q2_Sales : 7.2, Q3_Sales : 7.6, Q4_Sales : 7.7 } ] } ] }, { SubdivisionName : "East Bay", SubdivisionArea : [ { AreaName : "Oakland", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 9.1, Q2_Sales : 9.3, Q3_Sales : 9.5, Q4_Sales : 9.7 }, { OutletName : "Widgets R Us", Q1_Sales : 9.5, Q2_Sales : 9.8, Q3_Sales : 9.9, Q4_Sales : 9.4 }, { OutletName : "Wigetopia", Q1_Sales : 10.0, Q2_Sales : 10.4, Q3_Sales : 10.1, Q4_Sales : 9.9 }, { OutletName : "The Widget Center", Q1_Sales : 9.8, Q2_Sales : 10.0, Q3_Sales : 10.1, Q4_Sales : 10.1 }, { OutletName : "Widgets N Stuff", Q1_Sales : 10.4, Q2_Sales : 10.6, Q3_Sales : 10.5, Q4_Sales : 10.3 } ] }, { AreaName : "Richmond", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 9.2, Q2_Sales : 9.3, Q3_Sales : 9.5, Q4_Sales : 9.7 }, { OutletName : "Widgets R Us", Q1_Sales : 9.6, Q2_Sales : 9.8, Q3_Sales : 9.9, Q4_Sales : 10.1 }, { OutletName : "Wigetopia", Q1_Sales : 10.1, Q2_Sales : 10.4, Q3_Sales : 10.4, Q4_Sales : 10.4 }, { OutletName : "The Widget Center", Q1_Sales : 9.9, Q2_Sales : 10.1, Q3_Sales : 10.2, Q4_Sales : 10.3 }, { OutletName : "Widgets N Stuff", Q1_Sales : 10.5, Q2_Sales : 10.6, Q3_Sales : 10.7, Q4_Sales : 10.6 } ] }, { AreaName : "Albany", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 8.2, Q2_Sales : 8.3, Q3_Sales : 8.5, Q4_Sales : 8.7 }, { OutletName : "Widgets R Us", Q1_Sales : 8.6, Q2_Sales : 8.8, Q3_Sales : 8.9, Q4_Sales : 9.1 }, { OutletName : "Wigetopia", Q1_Sales : 9.1, Q2_Sales : 9.4, Q3_Sales : 9.4, Q4_Sales : 9.4 }, { OutletName : "The Widget Center", Q1_Sales : 8.9, Q2_Sales : 9.1, Q3_Sales : 9.2, Q4_Sales : 9.3 }, { OutletName : "Widgets N Stuff", Q1_Sales : 9.5, Q2_Sales : 9.6, Q3_Sales : 9.7, Q4_Sales : 9.6 } ] } ] } ] }, { StateDivisionName : "L.A. Basin", StateSubdivision : [ { SubdivisionName : "North LA", SubdivisionArea : [ { AreaName : "Santa Clarita", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 8.2, Q2_Sales : 8.3, Q3_Sales : 8.5, Q4_Sales : 9.7 }, { OutletName : "Widgets R Us", Q1_Sales : 8.6, Q2_Sales : 8.8, Q3_Sales : 8.9, Q4_Sales : 9.1 }, { OutletName : "Wigetopia", Q1_Sales : 9.1, Q2_Sales : 9.4, Q3_Sales : 9.4, Q4_Sales : 9.4 }, { OutletName : "The Widget Center", Q1_Sales : 8.9, Q2_Sales : 9.1, Q3_Sales : 9.2, Q4_Sales : 9.3 }, { OutletName : "Widgets N Stuff", Q1_Sales : 9.5, Q2_Sales : 9.6, Q3_Sales : 9.7, Q4_Sales : 9.6 } ] }, { AreaName : "Pasadena", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 10.1, Q2_Sales : 10.3, Q3_Sales : 10.5, Q4_Sales : 10.7 }, { OutletName : "Widgets R Us", Q1_Sales : 10.5, Q2_Sales : 10.8, Q3_Sales : 10.9, Q4_Sales : 10.4 }, { OutletName : "Wigetopia", Q1_Sales : 11.0, Q2_Sales : 11.4, Q3_Sales : 11.1, Q4_Sales : 10.9 }, { OutletName : "The Widget Center", Q1_Sales : 10.8, Q2_Sales : 11.0, Q3_Sales : 11.1, Q4_Sales : 11.1 }, { OutletName : "Widgets N Stuff", Q1_Sales : 11.4, Q2_Sales : 11.6, Q3_Sales : 11.5, Q4_Sales : 11.3 } ] }, { AreaName : "Glendale", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 9.1, Q2_Sales : 9.3, Q3_Sales : 9.5, Q4_Sales : 9.7 }, { OutletName : "Widgets R Us", Q1_Sales : 9.5, Q2_Sales : 9.8, Q3_Sales : 9.9, Q4_Sales : 9.4 }, { OutletName : "Wigetopia", Q1_Sales : 10.0, Q2_Sales : 10.4, Q3_Sales : 10.1, Q4_Sales : 9.9 }, { OutletName : "The Widget Center", Q1_Sales : 9.8, Q2_Sales : 10.0, Q3_Sales : 10.1, Q4_Sales : 10.1 }, { OutletName : "Widgets N Stuff", Q1_Sales : 10.4, Q2_Sales : 10.6, Q3_Sales : 10.5, Q4_Sales : 10.3 } ] } ] }, { SubdivisionName : "West LA", SubdivisionArea : [ { AreaName : "Santa Monica", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 11.1, Q2_Sales : 11.3, Q3_Sales : 11.5, Q4_Sales : 11.7 }, { OutletName : "Widgets R Us", Q1_Sales : 11.5, Q2_Sales : 11.8, Q3_Sales : 11.9, Q4_Sales : 11.4 }, { OutletName : "Wigetopia", Q1_Sales : 12.0, Q2_Sales : 12.4, Q3_Sales : 12.1, Q4_Sales : 11.9 }, { OutletName : "The Widget Center", Q1_Sales : 11.8, Q2_Sales : 12.0, Q3_Sales : 12.1, Q4_Sales : 12.1 }, { OutletName : "Widgets N Stuff", Q1_Sales : 12.4, Q2_Sales : 12.6, Q3_Sales : 12.5, Q4_Sales : 12.3 } ] }, { AreaName : "Marina Del Rey", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 12.1, Q2_Sales : 12.3, Q3_Sales : 12.5, Q4_Sales : 12.7 }, { OutletName : "Widgets R Us", Q1_Sales : 12.5, Q2_Sales : 12.8, Q3_Sales : 12.9, Q4_Sales : 12.8 }, { OutletName : "Wigetopia", Q1_Sales : 13.0, Q2_Sales : 13.4, Q3_Sales : 13.6, Q4_Sales : 13.9 }, { OutletName : "The Widget Center", Q1_Sales : 12.8, Q2_Sales : 13.0, Q3_Sales : 13.3, Q4_Sales : 13.5 }, { OutletName : "Widgets N Stuff", Q1_Sales : 13.4, Q2_Sales : 13.6, Q3_Sales : 13.7, Q4_Sales : 13.9 } ] }, { AreaName : "Inglewood", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 11.2, Q2_Sales : 11.4, Q3_Sales : 11.5, Q4_Sales : 11.7 }, { OutletName : "Widgets R Us", Q1_Sales : 11.6, Q2_Sales : 11.9, Q3_Sales : 12.1, Q4_Sales : 12.4 }, { OutletName : "Wigetopia", Q1_Sales : 12.1, Q2_Sales : 12.5, Q3_Sales : 12.6, Q4_Sales : 12.9 }, { OutletName : "The Widget Center", Q1_Sales : 11.9, Q2_Sales : 12.1, Q3_Sales : 12.3, Q4_Sales : 12.5 }, { OutletName : "Widgets N Stuff", Q1_Sales : 12.5, Q2_Sales : 12.6, Q3_Sales : 12.7, Q4_Sales : 12.8 } ] } ] }, { SubdivisionName : "South LA", SubdivisionArea : [ { AreaName : "Torrance", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 10.2, Q2_Sales : 10.3, Q3_Sales : 10.4, Q4_Sales : 10.8 }, { OutletName : "Widgets R Us", Q1_Sales : 10.4, Q2_Sales : 10.5, Q3_Sales : 10.6, Q4_Sales : 10.6 }, { OutletName : "Wigetopia", Q1_Sales : 11.1, Q2_Sales : 11.3, Q3_Sales : 11.4, Q4_Sales : 10.8 }, { OutletName : "The Widget Center", Q1_Sales : 10.6, Q2_Sales : 11.0, Q3_Sales : 11.3, Q4_Sales : 11.2 }, { OutletName : "Widgets N Stuff", Q1_Sales : 11.5, Q2_Sales : 11.6, Q3_Sales : 11.7, Q4_Sales : 11.5 } ] }, { AreaName : "Lakewood", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 11.1, Q2_Sales : 11.3, Q3_Sales : 11.5, Q4_Sales : 11.7 }, { OutletName : "Widgets R Us", Q1_Sales : 11.5, Q2_Sales : 11.8, Q3_Sales : 11.9, Q4_Sales : 11.4 }, { OutletName : "Wigetopia", Q1_Sales : 12.0, Q2_Sales : 12.4, Q3_Sales : 12.1, Q4_Sales : 11.9 }, { OutletName : "The Widget Center", Q1_Sales : 11.8, Q2_Sales : 12.0, Q3_Sales : 12.1, Q4_Sales : 12.1 }, { OutletName : "Widgets N Stuff", Q1_Sales : 12.4, Q2_Sales : 12.6, Q3_Sales : 12.5, Q4_Sales : 12.3 } ] }, { AreaName : "Whittier", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 10.1, Q2_Sales : 10.3, Q3_Sales : 10.5, Q4_Sales : 10.7 }, { OutletName : "Widgets R Us", Q1_Sales : 10.5, Q2_Sales : 10.8, Q3_Sales : 10.9, Q4_Sales : 10.4 }, { OutletName : "Wigetopia", Q1_Sales : 11.0, Q2_Sales : 11.4, Q3_Sales : 11.1, Q4_Sales : 10.9 }, { OutletName : "The Widget Center", Q1_Sales : 10.8, Q2_Sales : 11.0, Q3_Sales : 11.1, Q4_Sales : 11.1 }, { OutletName : "Widgets N Stuff", Q1_Sales : 11.4, Q2_Sales : 11.6, Q3_Sales : 11.5, Q4_Sales : 11.3 } ] } ] } ] }, { StateDivisionName : "Orange County", StateSubdivision : [ { SubdivisionName : "North OC", SubdivisionArea : [ { AreaName : "Huntington Beach", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 10.1, Q2_Sales : 10.3, Q3_Sales : 10.5, Q4_Sales : 10.7 }, { OutletName : "Widgets R Us", Q1_Sales : 10.5, Q2_Sales : 10.8, Q3_Sales : 10.9, Q4_Sales : 10.4 }, { OutletName : "Wigetopia", Q1_Sales : 11.0, Q2_Sales : 11.4, Q3_Sales : 11.1, Q4_Sales : 10.9 }, { OutletName : "The Widget Center", Q1_Sales : 10.8, Q2_Sales : 11.0, Q3_Sales : 11.1, Q4_Sales : 11.1 }, { OutletName : "Widgets N Stuff", Q1_Sales : 11.4, Q2_Sales : 11.6, Q3_Sales : 11.5, Q4_Sales : 11.3 } ] }, { AreaName : "Irvine", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 12.1, Q2_Sales : 12.3, Q3_Sales : 12.5, Q4_Sales : 12.7 }, { OutletName : "Widgets R Us", Q1_Sales : 12.5, Q2_Sales : 12.8, Q3_Sales : 12.9, Q4_Sales : 13.4 }, { OutletName : "Wigetopia", Q1_Sales : 13.0, Q2_Sales : 13.4, Q3_Sales : 13.1, Q4_Sales : 13.9 }, { OutletName : "The Widget Center", Q1_Sales : 12.8, Q2_Sales : 13.0, Q3_Sales : 13.1, Q4_Sales : 13.1 }, { OutletName : "Widgets N Stuff", Q1_Sales : 13.4, Q2_Sales : 13.6, Q3_Sales : 13.5, Q4_Sales : 13.3 } ] }, { AreaName : "Santa Ana", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 10.0, Q2_Sales : 10.2, Q3_Sales : 10.5, Q4_Sales : 10.7 }, { OutletName : "Widgets R Us", Q1_Sales : 10.4, Q2_Sales : 10.7, Q3_Sales : 10.9, Q4_Sales : 11.0 }, { OutletName : "Wigetopia", Q1_Sales : 10.9, Q2_Sales : 11.1, Q3_Sales : 11.3, Q4_Sales : 11.4 }, { OutletName : "The Widget Center", Q1_Sales : 10.7, Q2_Sales : 11.0, Q3_Sales : 11.1, Q4_Sales : 11.3 }, { OutletName : "Widgets N Stuff", Q1_Sales : 11.3, Q2_Sales : 11.4, Q3_Sales : 11.4, Q4_Sales : 11.5 } ] } ] }, { SubdivisionName : "Inland Empire", SubdivisionArea : [ { AreaName : "Corona", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 8.0, Q2_Sales : 8.2, Q3_Sales : 8.5, Q4_Sales : 8.7 }, { OutletName : "Widgets R Us", Q1_Sales : 8.4, Q2_Sales : 8.7, Q3_Sales : 8.9, Q4_Sales : 9.0 }, { OutletName : "Wigetopia", Q1_Sales : 8.9, Q2_Sales : 9.1, Q3_Sales : 9.3, Q4_Sales : 9.4 }, { OutletName : "The Widget Center", Q1_Sales : 8.7, Q2_Sales : 9.0, Q3_Sales : 9.1, Q4_Sales : 9.3 }, { OutletName : "Widgets N Stuff", Q1_Sales : 9.3, Q2_Sales : 9.4, Q3_Sales : 9.4, Q4_Sales : 9.5 } ] }, { AreaName : "Riverside", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 8.0, Q2_Sales : 8.1, Q3_Sales : 8.2, Q4_Sales : 8.2 }, { OutletName : "Widgets R Us", Q1_Sales : 8.3, Q2_Sales : 8.4, Q3_Sales : 8.5, Q4_Sales : 8.5 }, { OutletName : "Wigetopia", Q1_Sales : 8.7, Q2_Sales : 9.8, Q3_Sales : 9.9, Q4_Sales : 9.9 }, { OutletName : "The Widget Center", Q1_Sales : 8.5, Q2_Sales : 8.6, Q3_Sales : 8.6, Q4_Sales : 8.5 }, { OutletName : "Widgets N Stuff", Q1_Sales : 9.1, Q2_Sales : 9.2, Q3_Sales : 9.2, Q4_Sales : 9.2 } ] }, { AreaName : "Ontario", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 8.0, Q2_Sales : 8.1, Q3_Sales : 8.2, Q4_Sales : 8.2 }, { OutletName : "Widgets R Us", Q1_Sales : 8.2, Q2_Sales : 8.2, Q3_Sales : 8.3, Q4_Sales : 8.3 }, { OutletName : "Wigetopia", Q1_Sales : 8.5, Q2_Sales : 8.6, Q3_Sales : 8.7, Q4_Sales : 8.7 }, { OutletName : "The Widget Center", Q1_Sales : 8.4, Q2_Sales : 8.5, Q3_Sales : 8.4, Q4_Sales : 8.5 }, { OutletName : "Widgets N Stuff", Q1_Sales : 9.0, Q2_Sales : 9.1, Q3_Sales : 9.2, Q4_Sales : 9.3 } ] } ] }, { SubdivisionName : "South OC", SubdivisionArea : [ { AreaName : "Laguna Beach", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 12.1, Q2_Sales : 12.3, Q3_Sales : 12.5, Q4_Sales : 12.7 }, { OutletName : "Widgets R Us", Q1_Sales : 12.5, Q2_Sales : 12.8, Q3_Sales : 12.9, Q4_Sales : 13.4 }, { OutletName : "Wigetopia", Q1_Sales : 13.0, Q2_Sales : 13.4, Q3_Sales : 13.1, Q4_Sales : 13.9 }, { OutletName : "The Widget Center", Q1_Sales : 12.8, Q2_Sales : 13.0, Q3_Sales : 13.1, Q4_Sales : 13.1 }, { OutletName : "Widgets N Stuff", Q1_Sales : 13.4, Q2_Sales : 13.6, Q3_Sales : 13.5, Q4_Sales : 13.3 } ] }, { AreaName : "San Juan Capistrano", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 12.0, Q2_Sales : 12.1, Q3_Sales : 12.3, Q4_Sales : 12.4 }, { OutletName : "Widgets R Us", Q1_Sales : 12.4, Q2_Sales : 12.5, Q3_Sales : 12.4, Q4_Sales : 13.5 }, { OutletName : "Wigetopia", Q1_Sales : 13.1, Q2_Sales : 13.2, Q3_Sales : 13.3, Q4_Sales : 13.4 }, { OutletName : "The Widget Center", Q1_Sales : 12.7, Q2_Sales : 13.0, Q3_Sales : 13.1, Q4_Sales : 13.2 }, { OutletName : "Widgets N Stuff", Q1_Sales : 13.3, Q2_Sales : 13.3, Q3_Sales : 13.4, Q4_Sales : 13.5 } ] }, { AreaName : "San Clemente", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 11.0, Q2_Sales : 11.1, Q3_Sales : 11.3, Q4_Sales : 11.4 }, { OutletName : "Widgets R Us", Q1_Sales : 11.4, Q2_Sales : 11.5, Q3_Sales : 11.4, Q4_Sales : 12.5 }, { OutletName : "Wigetopia", Q1_Sales : 12.1, Q2_Sales : 12.2, Q3_Sales : 12.3, Q4_Sales : 12.4 }, { OutletName : "The Widget Center", Q1_Sales : 11.7, Q2_Sales : 12.0, Q3_Sales : 12.1, Q4_Sales : 12.2 }, { OutletName : "Widgets N Stuff", Q1_Sales : 12.3, Q2_Sales : 12.3, Q3_Sales : 12.4, Q4_Sales : 12.5 } ] } ] } ] }, { StateDivisionName : "San Diego", StateSubdivision : [ { SubdivisionName : "North SD", SubdivisionArea : [ { AreaName : "Oceanside", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 12.0, Q2_Sales : 12.1, Q3_Sales : 12.3, Q4_Sales : 12.4 }, { OutletName : "Widgets R Us", Q1_Sales : 12.4, Q2_Sales : 12.5, Q3_Sales : 12.4, Q4_Sales : 13.5 }, { OutletName : "Wigetopia", Q1_Sales : 13.1, Q2_Sales : 13.2, Q3_Sales : 13.3, Q4_Sales : 13.4 }, { OutletName : "The Widget Center", Q1_Sales : 12.7, Q2_Sales : 13.0, Q3_Sales : 13.1, Q4_Sales : 13.2 }, { OutletName : "Widgets N Stuff", Q1_Sales : 13.3, Q2_Sales : 13.3, Q3_Sales : 13.4, Q4_Sales : 13.5 } ] }, { AreaName : "Del Mar", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 11.0, Q2_Sales : 11.1, Q3_Sales : 11.3, Q4_Sales : 11.4 }, { OutletName : "Widgets R Us", Q1_Sales : 11.4, Q2_Sales : 11.5, Q3_Sales : 11.4, Q4_Sales : 12.5 }, { OutletName : "Wigetopia", Q1_Sales : 12.1, Q2_Sales : 12.2, Q3_Sales : 12.3, Q4_Sales : 12.4 }, { OutletName : "The Widget Center", Q1_Sales : 11.7, Q2_Sales : 12.0, Q3_Sales : 12.1, Q4_Sales : 12.2 }, { OutletName : "Widgets N Stuff", Q1_Sales : 12.3, Q2_Sales : 12.3, Q3_Sales : 12.4, Q4_Sales : 12.5 } ] }, { AreaName : "Pacific Beach", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 12.1, Q2_Sales : 12.3, Q3_Sales : 12.5, Q4_Sales : 12.7 }, { OutletName : "Widgets R Us", Q1_Sales : 12.5, Q2_Sales : 12.8, Q3_Sales : 12.9, Q4_Sales : 13.4 }, { OutletName : "Wigetopia", Q1_Sales : 13.0, Q2_Sales : 13.4, Q3_Sales : 13.1, Q4_Sales : 13.9 }, { OutletName : "The Widget Center", Q1_Sales : 12.8, Q2_Sales : 13.0, Q3_Sales : 13.1, Q4_Sales : 13.1 }, { OutletName : "Widgets N Stuff", Q1_Sales : 13.4, Q2_Sales : 13.6, Q3_Sales : 13.5, Q4_Sales : 13.3 } ] } ] }, { SubdivisionName : "East SD", SubdivisionArea : [ { AreaName : "Escondido", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 8.0, Q2_Sales : 8.1, Q3_Sales : 8.2, Q4_Sales : 8.2 }, { OutletName : "Widgets R Us", Q1_Sales : 8.2, Q2_Sales : 8.2, Q3_Sales : 8.3, Q4_Sales : 8.3 }, { OutletName : "Wigetopia", Q1_Sales : 8.5, Q2_Sales : 8.6, Q3_Sales : 8.7, Q4_Sales : 8.7 }, { OutletName : "The Widget Center", Q1_Sales : 8.4, Q2_Sales : 8.5, Q3_Sales : 8.4, Q4_Sales : 8.5 }, { OutletName : "Widgets N Stuff", Q1_Sales : 9.0, Q2_Sales : 9.1, Q3_Sales : 9.2, Q4_Sales : 9.3 } ] }, { AreaName : "Santee", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 8.1, Q2_Sales : 8.1, Q3_Sales : 8.2, Q4_Sales : 8.2 }, { OutletName : "Widgets R Us", Q1_Sales : 8.1, Q2_Sales : 8.2, Q3_Sales : 8.3, Q4_Sales : 8.3 }, { OutletName : "Wigetopia", Q1_Sales : 8.3, Q2_Sales : 8.4, Q3_Sales : 8.5, Q4_Sales : 8.6 }, { OutletName : "The Widget Center", Q1_Sales : 8.2, Q2_Sales : 8.3, Q3_Sales : 8.4, Q4_Sales : 8.5 }, { OutletName : "Widgets N Stuff", Q1_Sales : 9.1, Q2_Sales : 9.2, Q3_Sales : 9.2, Q4_Sales : 9.3 } ] }, { AreaName : "La Mesa", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 7.1, Q2_Sales : 7.1, Q3_Sales : 7.2, Q4_Sales : 7.2 }, { OutletName : "Widgets R Us", Q1_Sales : 7.1, Q2_Sales : 7.2, Q3_Sales : 7.3, Q4_Sales : 7.3 }, { OutletName : "Wigetopia", Q1_Sales : 7.3, Q2_Sales : 7.4, Q3_Sales : 7.5, Q4_Sales : 7.6 }, { OutletName : "The Widget Center", Q1_Sales : 7.2, Q2_Sales : 7.3, Q3_Sales : 7.4, Q4_Sales : 7.5 }, { OutletName : "Widgets N Stuff", Q1_Sales : 8.1, Q2_Sales : 8.2, Q3_Sales : 8.2, Q4_Sales : 8.3 } ] } ] }, { SubdivisionName : "South SD", SubdivisionArea : [ { AreaName : "San Diego City", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 10.1, Q2_Sales : 10.3, Q3_Sales : 10.5, Q4_Sales : 10.7 }, { OutletName : "Widgets R Us", Q1_Sales : 10.5, Q2_Sales : 10.8, Q3_Sales : 10.9, Q4_Sales : 10.4 }, { OutletName : "Wigetopia", Q1_Sales : 11.0, Q2_Sales : 11.4, Q3_Sales : 11.1, Q4_Sales : 10.9 }, { OutletName : "The Widget Center", Q1_Sales : 10.8, Q2_Sales : 11.0, Q3_Sales : 11.1, Q4_Sales : 11.1 }, { OutletName : "Widgets N Stuff", Q1_Sales : 11.4, Q2_Sales : 11.6, Q3_Sales : 11.5, Q4_Sales : 11.3 } ] }, { AreaName : "Coronado", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 9.1, Q2_Sales : 9.3, Q3_Sales : 9.5, Q4_Sales : 9.7 }, { OutletName : "Widgets R Us", Q1_Sales : 9.5, Q2_Sales : 9.8, Q3_Sales : 9.9, Q4_Sales : 10.1 }, { OutletName : "Wigetopia", Q1_Sales : 10.0, Q2_Sales : 10.4, Q3_Sales : 10.5, Q4_Sales : 10.6 }, { OutletName : "The Widget Center", Q1_Sales : 9.8, Q2_Sales : 10.0, Q3_Sales : 10.1, Q4_Sales : 10.1 }, { OutletName : "Widgets N Stuff", Q1_Sales : 10.4, Q2_Sales : 10.6, Q3_Sales : 10.5, Q4_Sales : 10.6 } ] }, { AreaName : "Chula Vista", RetailOutlet : [ { OutletName : "Widgetarium", Q1_Sales : 10.0, Q2_Sales : 10.2, Q3_Sales : 10.5, Q4_Sales : 10.7 }, { OutletName : "Widgets R Us", Q1_Sales : 10.4, Q2_Sales : 10.7, Q3_Sales : 10.9, Q4_Sales : 11.0 }, { OutletName : "Wigetopia", Q1_Sales : 10.9, Q2_Sales : 11.1, Q3_Sales : 11.3, Q4_Sales : 11.4 }, { OutletName : "The Widget Center", Q1_Sales : 10.7, Q2_Sales : 11.0, Q3_Sales : 11.1, Q4_Sales : 11.3 }, { OutletName : "Widgets N Stuff", Q1_Sales : 11.3, Q2_Sales : 11.4, Q3_Sales : 11.4, Q4_Sales : 11.5 } ] } ] } ] } ] } ] } ] }
Get Company Info Get State Divisions Get State Division Subdivisions
Get Subdivision Areas Get Q1 Sales Get Q1 Sales Per State
Get Q1 Sales Widgetarium Get Q1 Sales Widgets R Us Get Q1 Sales Wigetopia
Get Q1 Sales The Widget Center Get Q1 Sales Widgets N Stuff

Results


function get_company_info(result_name) { let divResult = document.getElementById(result_name); let outStr = ""; outStr = "Company: " + company_json.Company; outStr += "<br/>Division: " + company_json.Divisions[0].DivisionName; outStr += "<br/>States: " + company_json.Divisions[0].States.length +"<ul>"; for (let i = 0; i < company_json.Divisions[0].States.length; i++) { outStr += "<li>" + company_json.Divisions[0].States[i].StateName +"</li>"; } outStr += "</ul>"; divResult.innerHTML = outStr; }
function get_company_state_divsions(result_name) { let divResult = document.getElementById(result_name); let outStr = ""; outStr = "Company: " + company_json.Company; outStr += "<br/>Division: " + company_json.Divisions[0].DivisionName; outStr += "<br/>States: " + company_json.Divisions[0].States.length + "<ul>"; for (let i = 0; i < company_json.Divisions[0].States.length; i++) { outStr += "<li>" + company_json.Divisions[0].States[i].StateName +"<ul>"; for (let j = 0; j < company_json.Divisions[0].States[i].StateDivision.length; j++) { outStr += "<li>" + company_json.Divisions[0].States[i].StateDivision[j].StateDivisionName +"</li>"; } outStr += "</ul></li>"; } outStr += "</ul>"; divResult.innerHTML = outStr; }
function get_divsion_subs(result_name) { let divResult = document.getElementById(result_name); let outStr = ""; outStr = "Company: " + company_json.Company; outStr += "<br/>Division: " + company_json.Divisions[0].DivisionName; outStr += "<br/>States: " + company_json.Divisions[0].States.length + "<ul>"; for (let i = 0; i < company_json.Divisions[0].States.length; i++) { outStr += "<li>" + company_json.Divisions[0].States[i].StateName + "<ul>"; for (let j = 0; j < company_json.Divisions[0].States[i].StateDivision.length; j++) { outStr += "<li>" + company_json.Divisions[0].States[i].StateDivision[j].StateDivisionName + "<ul>"; for (let k = 0; k < company_json.Divisions[0].States[i].StateDivision[j].StateSubdivision.length; k++) { outStr += "<li>" + company_json.Divisions[0].States[i].StateDivision[j].StateSubdivision[k].SubdivisionName +"</li>"; } outStr += "</ul></li>"; } outStr += "</ul></li>"; } outStr += "</ul>"; divResult.innerHTML = outStr; }
function get_subdivsion_areas(result_name) { let divResult = document.getElementById(result_name); let outStr = ""; outStr = "Company: " + company_json.Company; outStr += "<br/>Division: " + company_json.Divisions[0].DivisionName; outStr += "<br/>States: " + company_json.Divisions[0].States.length + "<ul>"; for (let i = 0; i < company_json.Divisions[0].States.length; i++) { outStr += "<li>" + company_json.Divisions[0].States[i].StateName + "<ul>"; for (let j = 0; j < company_json.Divisions[0].States[i].StateDivision.length; j++) { outStr += "<li>" + company_json.Divisions[0].States[i].StateDivision[j].StateDivisionName + "<ul>"; for (let k = 0; k < company_json.Divisions[0].States[i].StateDivision[j].StateSubdivision.length; k++) { outStr += "<li>" + company_json.Divisions[0].States[i].StateDivision[j].StateSubdivision[k].SubdivisionName + "<ul>"; for (let m = 0; m < company_json.Divisions[0].States[i].StateDivision[j].StateSubdivision[k].SubdivisionArea.length; m++) { outStr += "<li>" + company_json.Divisions[0].States[i].StateDivision[j].StateSubdivision[k].SubdivisionArea[m].AreaName +"</li>"; } outStr += "</ul></li>"; } outStr += "</ul></li>"; } outStr += "</ul></li>"; } outStr += "</ul>"; divResult.innerHTML = outStr; }
function get_q1_sales(result_name) { let divResult = document.getElementById(result_name); let outStr = ""; let q1_sales = 0.0; let sd_q1_sales = 0.0; outStr = "Company: " + company_json.Company; outStr += "<br/>Division: " + company_json.Divisions[0].DivisionName; outStr += "<br/>States: " + company_json.Divisions[0].States.length + "<ul>"; for (let i = 0; i < company_json.Divisions[0].States.length; i++) { outStr += "<li>" + company_json.Divisions[0].States[i].StateName + "<ul>"; for (let j = 0; j < company_json.Divisions[0].States[i].StateDivision.length; j++) { outStr += "<li>" + company_json.Divisions[0].States[i].StateDivision[j].StateDivisionName + "<ul>"; for (let k = 0; k < company_json.Divisions[0].States[i].StateDivision[j].StateSubdivision.length; k++) { outStr += "<li>" + company_json.Divisions[0].States[i].StateDivision[j].StateSubdivision[k].SubdivisionName + "<ul>"; for (let m = 0; m < company_json.Divisions[0].States[i].StateDivision[j].StateSubdivision[k].SubdivisionArea.length; m++) { outStr += "<li>" + company_json.Divisions[0].States[i].StateDivision[j].StateSubdivision[k].SubdivisionArea[m].AreaName + "<ul>"; sd_q1_sales = 0.0; for (let n = 0; n < company_json.Divisions[0].States[i].StateDivision[j].StateSubdivision[k].SubdivisionArea[m].RetailOutlet.length; n++) { outStr += "<li>"; outStr += company_json.Divisions[0].States[i].StateDivision[j].StateSubdivision[k].SubdivisionArea[m].RetailOutlet[n].OutletName; outStr += " $" + company_json.Divisions[0].States[i].StateDivision[j].StateSubdivision[k].SubdivisionArea[m].RetailOutlet[n].Q1_Sales + " Million"; sd_q1_sales += parseFloat(company_json.Divisions[0].States[i].StateDivision[j].StateSubdivision[k].SubdivisionArea[m].RetailOutlet[n].Q1_Sales); q1_sales += sd_q1_sales; outStr += "</li>"; } outStr += "</ul>Total: $" + sd_q1_sales.toFixed(2) +" Million<br/> <br/></li>"; } outStr += "</ul></li>"; } outStr += "</ul></li>"; } outStr += "</ul></li>"; } outStr += "</ul><br/> <br/>Total Q1 Sales: " + format_num_output(q1_sales); divResult.innerHTML = outStr; } function format_num_output(num) { let outStr = ""; if (num > 1000.0) { num = num / 1000.0; outStr = "$" + num.toFixed(2) + " Billion"; } else { outStr = "$" + num.toFixed(2) + " Million"; } return outStr; }
function get_q1_sales_per_state(result_name) { let divResult = document.getElementById(result_name); let outStr = ""; let q1_sales = 0.0; let q1_state_sales = 0.0; let sd_q1_sales = 0.0; outStr = "Company: " + company_json.Company; outStr += "<br/>Division: " + company_json.Divisions[0].DivisionName; outStr += "<br/>States: " + company_json.Divisions[0].States.length + "<ul>"; for (let i = 0; i < company_json.Divisions[0].States.length; i++) { outStr += "<li>" + company_json.Divisions[0].States[i].StateName + ""; q1_state_sales = 0.0; for (let j = 0; j < company_json.Divisions[0].States[i].StateDivision.length; j++) { for (let k = 0; k < company_json.Divisions[0].States[i].StateDivision[j].StateSubdivision.length; k++) { for (let m = 0; m < company_json.Divisions[0].States[i].StateDivision[j].StateSubdivision[k].SubdivisionArea.length; m++) { sd_q1_sales = 0.0; for (let n = 0; n < company_json.Divisions[0].States[i].StateDivision[j].StateSubdivision[k].SubdivisionArea[m].RetailOutlet.length; n++) { sd_q1_sales += parseFloat(company_json.Divisions[0].States[i].StateDivision[j].StateSubdivision[k].SubdivisionArea[m].RetailOutlet[n].Q1_Sales); q1_sales += sd_q1_sales; q1_state_sales += sd_q1_sales; } } } } outStr += " - "+ format_num_output(q1_state_sales); } outStr += "</ul>"; outStr += "<br/> <br/>Total Q1 Sales: " + format_num_output(q1_sales); divResult.innerHTML = outStr; }
function get_q1_sales_per_store(result_name, store_name) { let divResult = document.getElementById(result_name); let outStr = ""; let q1_sales = 0.0; let q1_state_sales = 0.0; let sd_q1_sales = 0.0; outStr = "Company: " + company_json.Company; outStr += "<br/>Division: " + company_json.Divisions[0].DivisionName; outStr += "<br/>Store: " + store_name + "<ul>"; for (let i = 0; i < company_json.Divisions[0].States.length; i++) { outStr += "<li>" + company_json.Divisions[0].States[i].StateName + ""; q1_state_sales = 0.0; for (let j = 0; j < company_json.Divisions[0].States[i].StateDivision.length; j++) { for (let k = 0; k < company_json.Divisions[0].States[i].StateDivision[j].StateSubdivision.length; k++) { for (let m = 0; m < company_json.Divisions[0].States[i].StateDivision[j].StateSubdivision[k].SubdivisionArea.length; m++) { sd_q1_sales = 0.0; for (let n = 0; n < company_json.Divisions[0].States[i].StateDivision[j].StateSubdivision[k].SubdivisionArea[m].RetailOutlet.length; n++) { if (company_json.Divisions[0].States[i].StateDivision[j].StateSubdivision[k].SubdivisionArea[m].RetailOutlet[n].OutletName == store_name) { sd_q1_sales += parseFloat(company_json.Divisions[0].States[i].StateDivision[j].StateSubdivision[k].SubdivisionArea[m].RetailOutlet[n].Q1_Sales); q1_sales += sd_q1_sales; q1_state_sales += sd_q1_sales; } } } } } outStr += " - " + format_num_output(q1_state_sales); } outStr += "</ul>"; outStr += "<br/> <br/>Total Q1 Sales: " + format_num_output(q1_sales); divResult.innerHTML = outStr; }

Conversion

Javascript Objects can be converted to JSON and JSON can be converted to Javascript Objects. This is only done with data-only Javascript Objects. JSON has no means to represent Object Methods.

Javascript Objects to JSON

function jso_to_json_01(result_name) { let divResult = document.getElementById(result_name); let jsonStr = ""; let jso_Person = {}; jso_Person.FirstName = "John"; jso_Person.LastName = "Lennon"; jso_Person.Occupation = "Musician"; jsonStr = JSON.stringify(jso_Person); divResult.innerHTML = jsonStr; }
JSON Version of Object

Response


JSON to Javascript Object

function json_to_jso_01(result_name) { let divResult = document.getElementById(result_name); let jsoStr = ""; let json_Person = `{ "FirstName": "John", "LastName": "Lennon", "Occupation": "Musician" }`; jso_Person = JSON.parse(json_Person); jsoStr += "First Name: "+ jso_Person.FirstName + "<br/>"; jsoStr += "Last Name: " + jso_Person.LastName + "<br/>"; jsoStr += "Occupation: " + jso_Person.Occupation + "<br/>"; divResult.innerHTML = jsoStr; }
JS Object Version of JSON

Response