Passing of native objects (which is how JS deals with arrays) is blocked as the variable you're trying to 'pass' is just a reference to the object's location in memory - and you can't risk sharing the stack with another program.
in the end the method I described to stringify arrays is the only chance to pass an array? I don't remember that JS is so restrictive passing arrays...in my old days dealing with browsers. That must be something due to Adobe strict security policies?
Global access to objects is indeed part of the sandboxing restriction. What you're trying to do is not transfer an object reference between scripts as you would when web pages interact with one another, but between interpreters. Allowing that would be a huge problem, as you could inject methods as well as properties.