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

Reply via email to