Data skeleton

Read and write from the data skeleton

by Julien Etienne

JavaScript

const dataSkeleton = {};
dataSkeleton.hello = {};
dataSkeleton.hello.world = {};
dataSkeleton.hello.world.how = {};
dataSkeleton.hello.world.how.are = {};
dataSkeleton.hello.world.how.are.you = 'You made it son';

function o(address, write) {
  const addressArr = address.split(' ');
  const addressLength = addressArr.length;
  let path = o.prototype.skeleton;

  for (let i = 0; i < addressLength; i++) {
    path = path[addressArr[i]];

    if (write) {
      if (i === addressLength - 2) {
        path[addressArr[i + 1]] = write;
        }
      }
    }

  return path;
}

o.create = function(skeleton) {
  o.prototype.skeleton = skeleton;
};

/////
o.create(dataSkeleton);

//o.
var results = o('hello world how are you');
console.log(results, dataSkeleton)