我想问一下javascript guru下面这个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>
我问的原因是因为我的一个推特联系人收到了这个link作为私人推文而且我没有给他发这条推文。所以我想知道这可能是恶意还是随机重定向脚本?我拿了网址并用wget下载了链接,这就是我如何获得代码。
提前致谢。
答案 0 :(得分:2)
它会自动重定向到随机选择的指定网址之一。这是通过首先声明函数rand
来完成的,该函数将在指定为参数(min
和max
)的数字之间返回一个随机数。然后创建一个URL数组,最后选择一个随机元素,用于使用document.location.href
重定向到该URL。
脚本写得很差,例如多年来,使用围绕代码的注释是不必要的。此外,redir
变量隐式声明为全局。
然而,这是Javascript,而不是Java。尽管名称相似,但它们的语言却截然不同。
答案 1 :(得分:0)
答案 2 :(得分:0)
函数rand
只生成最小值和最大值之间的随机数。
urls
是一系列网址。
var redir
被分配到urls
数组中的一个网址。
这似乎是通过使用min = 0和max = rand
数组的最大索引调用urls
来随机完成的。除了URL之外,该行还会在最后添加11到999之间的随机数...
document.location.href = redir;
只需将当前页面重定向到新目的地
即可答案 3 :(得分:0)
它从urls数组中随机选择一个url,在url的末尾添加另一个随机数,然后将用户重定向到该url。