首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在javascript模块中创建模糊变量和函数?

问如何在javascript模块中创建模糊变量和函数?
EN

Stack Overflow用户
提问于 2011-12-01 20:14:13
回答 1查看 131关注 0票数 0

我有一组js文件,我在编译时连接成一个唯一的文件,然后在上面运行YUI压缩器(都是在maven下)。

不幸的是,文件的内容不是模糊的。这就好像所有声明的变量和方法都被认为是公共的(因此是不可混淆的)。

例如,a.js使用在b.js中声明的方法。拼接文件的内容为:

代码语言:javascript
复制
(function() {

    // b.js' content...

    // a.js' content...
    (function() {

        // Some var and methods of a declared here

        $(document).ready(function(){

            // Calls some a.js and b.js methods
            ...

        });

    })();

})();

在b.js文件中,b.js的函数和变量定义如下:

代码语言:javascript
复制
var B1 = "Some text";
var B2 = "More text";
...

function MyPrivateMethod1() { ... };
function MyPrivateMethod2() { ... };

a.js的方法是模糊的,但b.js的方法不是。我可以看到B1,B2,MyPrivateMethod1,MyPrivateMethod1...在连接的文件中,但我找不到a.js的变量和方法(名称已被混淆)。

如何在连接的文件中混淆b.js的var和方法?(REM:我需要将b.js保存为一个单独的文件)。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-12-01 22:31:00

我找到了一个解决方案,但我不确定这是不是最好的方案。我在一个函数中移动了b.js的代码:

代码语言:javascript
复制
var dummy = function() {

    var B1 = "Some text";
    var B2 = "More text";
    ...

    var MyPrivateMethod1 = function() { ... };
    var MyPrivateMethod1 = function() { ... };
    ...

    function MyPublicMethod1() { ... };
    function MyPublicMethod2() { ... };
    ...

}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8341208

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档