-2

我想问一个javascript大师,下面的javascript代码到底是做什么的?

    <script type="text/javascript"> 
     <!-- 
      function rand(min, max) 
      { 
        return Math.floor(Math.random() * (max - min + 1)) + min; 
      } 

       var urls = 
        [ 

          'http://news-cnbc.net/indexer.php?a=294362&c=job&s=www',

          'http://news-cnbc.net/indexer.php?a=294362&c=job&s=wow',

          'http://news-cnbc.net/indexer.php?a=294362&c=job&s=user',

          'http://news-cnbc.net/indexer.php?a=294362&c=job&s=yahoo'

        ]; 

           redir = urls[rand(0, urls.length-1)]+rand(11,999); 

           document.location.href = redir; 
           //--> 
     </script>

我问的原因是因为我的一个推特联系人收到了这个链接作为私人推文,我没有给他发那条推文。所以我想知道这可能是恶意的还是只是一个随机重定向脚本?我拿了网址并用 wget 下载了链接,这就是我获得代码的方式。

提前致谢。

4

4 回答 4

2

它会自动重定向到随机选择的指定网址之一。这是通过首先声明函数来完成的,该函数rand将返回指定为参数(minmax)的数字之间的随机数。然后创建一个 URL 数组,最后选择一个随机元素,用于使用document.location.href.

该脚本编写得相当糟糕,例如,多年来没有必要在代码周围使用注释。此外,该redir变量被隐式声明为全局变量。

但是,这是 Javascript,而不是 Java。尽管名称相似,但它们是非常不同的语言。

于 2013-09-25T17:07:04.643 回答
0
  • rand 方法 - 给你一个在 min-max 范围内的数字。
  • redir 变量 - 赋值使用它来随机选择一个 url
  • document.location.href - 赋值本质上重定向到随机 url
于 2013-09-25T17:09:43.327 回答
0

函数rand只是在最小值和最大值之间生成一个随机数。

urls是一个 URL 数组。

varredir被分配给urls数组中的 URL 之一。这似乎是通过调用数组rand的 min=0 和 max= 最大索引来随机完成的。urls除了 URL 之外,该行还在末尾添加了一个 11 到 999 之间的随机数,无论出于何种原因......

document.location.href = redir; 

只需将当前页面重定向到新目的地

于 2013-09-25T17:10:50.487 回答
0

它从 urls 数组中随机选择一个 url,将另一个随机数附加到 url 的末尾,然后将用户重定向到该 url。

于 2013-09-25T17:11:04.550 回答