How to break closures in JavaScript
<p>Is there any way to break a closure easily in JavaScript? The closest I have gotten is this:</p>

<pre><code>var src = 3;
function foo () {
    return function () {
        return src; }
    }
function bar (func) {
    var src = 9;
    return eval('('+func.toString()+')')(); // This line
}
alert(bar(foo()));
</code></pre>

<p>This prints '9', instead of '3', as a closure would dictate. However, this approach seems kind of ugly to me, are there any better ways?</p>
