我喜欢生成服务器上的JavaScript和想运行谷歌Clousure编译器要在脚本的PHP源代码跑。
var jsvar = <?=$var ? true : false ?>;
只是游荡,如果有在告诉编译器跳过的优化调度什么办法? 像正则表达式跳跃:
/<\?=.*?\?>/
最好的祝福,
尼克拉斯
我喜欢生成服务器上的JavaScript和想运行谷歌Clousure编译器要在脚本的PHP源代码跑。
var jsvar = <?=$var ? true : false ?>;
只是游荡,如果有在告诉编译器跳过的优化调度什么办法? 像正则表达式跳跃:
/<\?=.*?\?>/
最好的祝福,
尼克拉斯
我发现,我的代码更易于维护,当我从我的服务器端逻辑分开我的客户端JavaScript。 现在,我写我的剧本,使得我的服务器端的处理发出初始化变量。
示例 - 服务器端:
<?php echo 'var mynamespace = {}; mynamespace.jsvar = "' . $var . '";'; ?>
在我的客户端JavaScript:
var mynamespace = window['mynamespace'] || {};
function MyFunction() {
alert(mynamespace['jsvar']);
}
MyFunction();
使用这种风格,我的客户端JavaScript用封编译器编译容易。
You can do this:
var jsvar = eval("<?=$var ? true : false ?>");
The compiler won't touch the contents of the string.