<html>
<head>
<title>prompt函数</title>
<script type = "text/javascript">
var agent = navigator.userAgent.toLowerCase();//获得浏览器头部信息,并转换成小写,这应该不是个对象吧,那他是什么呢?
var major,minor
    major = parseInt(navigator.appVersion);//浏览器版本信息,并转换成整数
    minor = parseFloat(navigator.appVersion);//浏览器版本信息,并转换为浮点数
var ns = ((agent.indexOf('mozilla') != -1) && (agent.indexOf('compatible') == -1));
//xxxx.indexOf,xxx必须是对象吗?怎么解释理解这个前缀,-1又是什么意思,另外indexOf('compatible')里面是单引号,请问双引号有关系吗?这整句返回的是个什么东西,布尔值吗?
var ns4 = (ns && (major == 4));//这段话可不可以写成ns && (major == 4) 不要外层那个括号,我个人觉得没意义。
var ns7 = (ns && (agent.indexOf("mise 6.0") != -1));//var ie,ie4,ie6;
var    ie = (agent.indexOf("msie") != -1);
var  ie4 = (ie && (this.major == 4)); //这个this以前并没见到过,手册上貌似也没有,我大概只只对是对象里面的,求兄能给个通俗的解释。
var  ie6 = (ie && (agent.indexOf("mise 6.0") != -1));
if(!ns4){
alert("<b>我也不清楚这是啥意思</b>");
}
</script>
</head>
<body>
<script type = "text/javascript">
if(!ns4){
document.write("<b>我也不清楚这是啥意思</b>");
}
</script>
</body>
</html>这段代码很陈旧,关于对浏览器版本的判断和输出,大家有没有更好的系统性的东西,另外请高手解说下这段代码吧