Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/377.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用名称空间缩小Javascript_Javascript_Minify - Fatal编程技术网

使用名称空间缩小Javascript

使用名称空间缩小Javascript,javascript,minify,Javascript,Minify,有没有允许定义名称空间的javascript迷你程序(在线的)?我的意思是所有这些迷你程序都会生成带有短变量名的代码,比如a、b、c。。。这可能会导致与其他缩小的javascript冲突。大多数(好的)缩小器都不使用全局范围的变量,因为默认情况下,这些变量是我们所在的名称空间。mikeycgto建议您确保将这些控制在最低限度: var page = ( function(){ var scopedVar = "I'm something like private."; //do som

有没有允许定义名称空间的javascript迷你程序(在线的)?我的意思是所有这些迷你程序都会生成带有短变量名的代码,比如a、b、c。。。这可能会导致与其他缩小的javascript冲突。

大多数(好的)缩小器都不使用全局范围的变量,因为默认情况下,这些变量是我们所在的名称空间。mikeycgto建议您确保将这些控制在最低限度:

var page = ( function(){
  var scopedVar = "I'm something like private.";

  //do some other stuff

  return {
    usefulThing: function(){
        return scopedVar;
    }
  };
}() );
通过minifier运行它应该会在全局范围内留下一个“page”var。usefulThing是一种方法(minifier也应该将其单独保留)。“scopedVar”可能会变成“a”或“o”之类的,但你永远不会在意。您的API将保持预期的状态,尽管内部会被弄乱。

大多数(好的)小型化程序都会保留全局范围的变量,因为默认情况下,这些变量是我们使用的名称空间。mikeycgto建议您确保将这些控制在最低限度:

var page = ( function(){
  var scopedVar = "I'm something like private.";

  //do some other stuff

  return {
    usefulThing: function(){
        return scopedVar;
    }
  };
}() );

通过minifier运行它应该会在全局范围内留下一个“page”var。usefulThing是一种方法(minifier也应该将其单独保留)。“scopedVar”可能会变成“a”或“o”之类的,但你永远不会在意。您的API将保持预期状态,尽管内部将被破坏。

不要在全局范围内编写代码。这就像一个公共厕所,你想尽量减少你的暴露。将代码包装在一个自动执行的匿名函数中。大多数缩略器允许您指定不需要的名称changed@mikeycgto:您能给我一个快速的建议如何实现这一点吗?据我所知,闭包编译器需要所有相互关联的脚本才能正确地缩小它们。否则,如果您的代码有一半是用闭包缩小的,而另一半依赖闭包的代码没有用闭包缩小,那么它将无法工作。你应该只为生产而缩小,这意味着所有的脚本。不要在全局范围内编写代码。这就像一个公共厕所,你想尽量减少你的暴露。将代码包装在一个自动执行的匿名函数中。大多数缩略器允许您指定不需要的名称changed@mikeycgto:您能给我一个快速的建议如何实现这一点吗?据我所知,闭包编译器需要所有相互关联的脚本才能正确地缩小它们。否则,如果您的代码有一半是用闭包缩小的,而另一半依赖闭包的代码没有用闭包缩小,那么它将无法工作。您应该只为生产缩小,这意味着所有脚本。