I have found that my code is much easier to maintain when I separate my client-side JavaScript from my server-side logic. Now I write my scripts such that my server-side processing emits initialization variables.
Example - Server Side:
<?php echo 'var mynamespace = {}; mynamespace.jsvar = "' . $var . '";'; ?>
And in my client-side javascript:
var mynamespace = window['mynamespace'] || {};
function MyFunction() {
alert(mynamespace['jsvar']);
}
MyFunction();
Using this style, my client-side javascript compiles easily with Closure-compiler.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…