防止关闭重命名对象键

时间:2015-03-30 19:05:31

标签: javascript google-closure-compiler

我有一个document['key'],我在我的代码中的其他地方定义。基本上是客户端在html <script></script>标记中设置的API密钥,如下所示。

<script type="text/javascript">
(function(){
  document.clientKey = 'a uuid unique to client';
})();
</script>

我通过document['clientKey']在我的javascript文件中调用了此密钥,它工作正常,直到我将其传递给闭包,将其重命名为document.I。我可以强制关闭以保持字符串'clientKey'

1 个答案:

答案 0 :(得分:1)

Understanding the Restrictions Imposed by the Closure Compiler

中介绍了这一点
  

使用字符串名称来引用对象属性:

     

编译器在高级模式下重命名属性,但它永远不会重命名字符串。   如果需要引用带引号字符串的属性,请始终使用带引号的字符串

var x = { 'unrenamed_property': 1 };
x['unrenamed_property'];  // This is OK.
if ( 'unrenamed_property' in x ) {};   // This is OK