日期:2014-05-16  浏览次数:20415 次

是为了防止攻击,故意写的较难阅读的脚本?
弱问一下,今天在sohu的网站看到的脚本如下;主要是用法了,
function   mes(num){if(let.indexOf(num)   !=   -1){return   eval(num)};else{if(num   <   10){return   eval(num)};else{return   mesk[num]}}};

整理格式后:
function   mes(num)
{
      if(let.indexOf(num)   !=   -1)
      {
            return   eval(num)
      };
    else
    {
          if(num   <   10)
          {
                return   eval(num)
          };
          else
          {
                return   mesk[num]
          }
    }
};

在}后加“;,”是为了防止攻击,故意写的较难阅读的脚本?我只知道正常的语句后没“;”,那是因为解释器会自动处理。

------解决方案--------------------
应该不是写难阅读脚本吧,这个也不难读
具体是啥我也不知道,等高人讲解吧
也许是个人习惯。哈哈
------解决方案--------------------
function mes(num){if(let.indexOf(num) != -1){return eval(num)};else{if(num < 10){return eval(num)};else{return mesk[num]}}};

这么处理主要是为了减少不必要的空格,提高脚本解释速度!

这是用工具处理过的代码,而非源码!!!
------解决方案--------------------
}; 是多此一举吧, } 就是结束的意思, 跟 ; 一样, 有C底的都知道...


弄这样主要是减少网络流量, 你随便打开个大型网站看一下就知道了...
比如 百度, Google.
------解决方案--------------------
;是各行语句的结束标志,但一般在语句段后是不用加的,但如果要对js代码进行语法分析(拼接和混淆)时就非常有用了。我认为这是一个好的习惯。
------解决方案--------------------
哈哈
正解: 那个是压缩版本,他们开发的时候是格式化的文本,然后项目使用压缩版本.

因为:.js 文件要下载 这样能省略好多字节
------解决方案--------------------
速度不见得提高,主要是减少字节,一个200多k的格式化.js能压缩掉好几十k,甚至更多.

还有就是你他们的函数名字和对象,一般都是少于3个字符,不象我们都是用好长名字做函数.
sohu很变态的.
哈哈 越是有钱人越是 "吝啬 ", 我们太大方了,建议大家也吝啬起来