I think that is what I said, you need to first split the string based on '.' and then use these to access the property you want.. a[b][c] etc..
And there is no need for eval... Was this a job interview question you got? On Thu, Dec 24, 2009 at 7:59 PM, Oskar Krawczyk <[email protected]>wrote: > I was expecting this would need hacking. > > Nor regex or split will help- I really don't want to use eval()... To get > the correct path: window[a][b].version > > Sent from my iPhone > > On 24 Dec 2009, at 17:23, Roman Land <[email protected]> wrote: > > I think this is not according to JS specification, example: > > var a = {'test.test' : "blah"}; > console.log(a['test.test']); // this works and splits "blah" > > So there is no 100% true way to build path from the script. but if you want > there are two ways I can think of: > 1. using regex > 2. using 'some.path'.split('.') will give you two elements to play with. > (but you have to be more elaborate with longer paths) > > In short, I think you are doing something wrong.. this is hacking basic > stuff that IMO you shouldnt.. > > > On Thu, Dec 24, 2009 at 6:55 PM, Oskar Krawczyk <<[email protected]> > [email protected]> wrote: > >> Yeah yeah, not Moo but Vanilla. I trust you guys more than any other JS >> group so I'll just go ahead ask here: >> >> <http://www.mootools.net/shell/q5ngz/> >> http://www.mootools.net/shell/q5ngz/ >> >> *There's a dynamic number of objects:* >> >> ScriptInfo = { >> version: '1.2' >> }; >> >> AnotherScriptInfo = {}; >> AnotherScriptInfo.Extension = { >> version: '1.2' >> }; >> >> *And a config:* >> >> var classes = ['ScriptInfo', 'AnotherScriptInfo.Extension']; >> >> What I need is to get into: *window.NNN.version* - where *NNN* can be one >> property or 10. >> >> Of course doing *window['AnotherScriptInfo.Extension'].version* ain't >> gonna fly. >> >> How do I deal with this? It's probably simpler than any solution that >> comes to mind at this moment. >> >> ___ >> >> Oskar Krawczyk >> <http://nouincolor.com>http://nouincolor.com >> > > > > -- > --- > "Make everything as simple as possible, but not simpler." > > - Albert Einstein > > -- --- "Make everything as simple as possible, but not simpler." - Albert Einstein
