var Gun = (typeof window !== "undefined")? window.Gun : require('../gun'); Gun.chain.path = function(field, opt){ var back = this, gun = back, tmp; if(typeof field === 'string'){ tmp = field.split(opt || '.'); if(1 === tmp.length){ gun = back.get(field); return gun; } field = tmp; } if(field instanceof Array){ if(field.length > 1){ gun = back; var i = 0, l = field.length; for(i; i < l; i++){ //gun = gun.get(field[i], (i+1 === l)? cb : null, opt); gun = gun.get(field[i]); } } else { gun = back.get(field[0]); } return gun; } if(!field && 0 != field){ return back; } gun = back.get(''+field); return gun; }