JSFiddle - React, Tailwind, and code Playground

by Chad Drummond

JavaScript

function JsonParser() {}

JsonParser.prototype.parse = function(inputStr) {
  
}

function main() {
  var jsonParser = new JsonParser();

  console.log("First Step: Parse array");
  var result = jsonParser.parse(" [ 10, 20, 30.1 ] ");
  for (var i = 0; i < result.length; i++) {
    console.log(result[i]);
  }

  console.log("\nSecond Step: Parse strings");
  result = jsonParser.parse(" [ 10 , 20, \"hello\", 30.1 ] ");
  for (var i = 0; i < result.length; i++) {
    console.log(result[i]);
  }

  result = jsonParser.parse('{ \
            "hello": "world",\
            "key1": 20,\
            "key2": 20.3,\
            "foo": "bar" }');
  console.log("\nThird Step: Parse objects");
  for (var key in result){
    if (result.hasOwnProperty(key)) {
      console.log(key, result[key]);
    }
  }

  console.log("\nFourth Step: Allow nested values");
  result = jsonParser.parse('{\
            "hello": "world",\
            "key1": 20,\
            "key2": 20.3,\
            "foo": {\
                "hello1": "world1",\
                "key3": [200, 300]\
            } }');
  for (var key in result) {
    if (result.hasOwnProperty(key)) {
      if (result[key] instanceof Object) {
        for (var key2 in result[key]) {
          console.log(key2, result[key][key2]);
        }
      } else {
        console.log(key, result[key]);
      }
    }
  }
}

main();

// Please do not modify the following line.
var module = module || {};
module.exports = JsonParser;