Dot Hash to Object Conversion

by andypotanin

JavaScript

function Convert(string, value, hash, seperator){
    if(hash == null){ hash = {}; }
    if(seperator == null){ seperator = ":"; }
    var parts = string.split(seperator);
    var refHash = hash;
    var depth = 0;
    parts.forEach(function(part){
      if(depth == parts.length - 1){
        refHash[part] = value;
      }else{
        if(refHash[part] == null){ refHash[part] = {}; }
        refHash = refHash[part];
      }
      depth++;
    });
    return hash;
  }

console.log( Convert( 'sd.sasdf.asdfasf', 'asdf', { 'asdf': 'asdfadsaf' } ) );