ksa, блин, пока я писал - ты уже написал.
http://learn.javascript.ru/play/2tw4z
<!DOCTYPE HTML>
<html>
<head></head>
<body>
<script>
Object.prototype.getByString = function(elems) {
var self = this, i;
elems = elems.split('.');
for(i=0; i<elems.length; i++) {
self = self[elems[i]];
if(!self) return;
}
return self;
};
var test = {
test2: {
test3: {
test4: function () {
alert(123);
}
}
}
};
test.getByString('test2.test3.test4')();
</script>
</body>
</html>