About JSON

Keys must be strings, and values must be a valid JSON data type (i.e. string, number, object, array, boolean or null).

Accessing an Object

You can access the object values by using dot (.) notation.

myObj = { "name":"John", "age":30, "car":null };
x = myObj.name;

You can also access the object values by using bracket ([]) notation:

myObj = { "name":"John", "age":30, "car":null };
x = myObj["name"];\
Looping an Object
myObj = { "name":"John", "age":30, "car":null };
for (x in myObj) {
  document.getElementById("demo").innerHTML += x;
}

 

Stringify

var obj = { name: "John", age: 30, city: "New York" };
var myJSON = JSON.stringify(obj);
document.getElementById("demo").innerHTML = myJSON;
var arr = [ "John", "Peter", "Sally", "Jane" ];
var myJSON = JSON.stringify(arr);
document.getElementById("demo").innerHTML = myJSON;

 

Read/Write JSON Files

If this JSON file won’t become too big over time, you should try the following:

Create a JavaScript object with the table array in it:

var obj = {
   table: []
};

Add some data to it, for example:

obj.table.push({id: 1, square:2});

Convert it from an object to a string with JSON.stringify

var json = JSON.stringify(obj);

Use fs to write the file to disk

var fs = require('fs');
fs.writeFile('myjsonfile.json', json, 'utf8', callback);

If you want to append it, read the JSON file and convert it back to an object

fs.readFile('myjsonfile.json', 'utf8', function readFileCallback(err, data){
  if (err) {
      console.log(err);
  } else {
  obj = JSON.parse(data); //now it an object
  obj.table.push({id: 2, square:3}); //add some data
  json = JSON.stringify(obj); //convert it back to json
  fs.writeFile('myjsonfile.json', json, 'utf8', callback); // write it back 
  }
});

This will work for data that is up to 100 MB effectively. Over this limit, you should use a database engine.
 

UPDATE:
Create a function which returns the current date (year+month+day) as a string. Create the file named this string + .json. the fs module has a function which can check for file existence named fs.stat(path, callback). With this, you can check if the file exists. If it exists, use the read function if it’s not, use the create function. Use the date string as the path cuz the file will be named as the today date + .json. the callback will contain a stats object which will be null if the file does not exist.