会看见这样的代码
<script src="test.js?a=a&b=b"></script>
我想问下.一般通过.js文件传递参数的作用是什么? 
而且加了参数浏览器 不就不能缓存了? 那么不就白白增加http链接数了么? 

解决方案 »

  1.   

    服务器上的test.js并不是个普通的js文件,而是个生成js的一个服务器端的程序,根据参数不同生成不同的js
      

  2.   

    楼上的意思是指
    test.js文件里会这么写么? 1. 取得本文件参数a的值 然后
    if(a == 'file1') {
        // 执行1方案代码
    } else {
        // 执行2方案代码
    }
    是这个意思么?
      

  3.   

    test.js并不是个js文件,而是被映射到了一个诸如aspx、jsp、cgi或者其他什么服务器端的页面上去了
      

  4.   

    那肯定不是,后台应该是个动态的页面,如aspx或asp或jsp之类的,当访问test.js的时候,实际上是调用某个jsp文件,在里面动态生成js的内容.
      

  5.   

    如,服务器上用的要是asp.net的话,就在web.config里面加上如下的配置 <urlMappings>
    <add mappedUrl="test.aspx" url="test.js"/>
    </urlMappings>这样客户端请求test.js的时候就会执行test.aspx
    test.aspx里面就写
    string a = request.querystring["a"];
    if(a == "file1") {    
        response.write("// 执行1方案代码");
        response.write("alert('执行1方案代码')");
    } else {
        response.write("// 执行2方案代码");
        response.write("alert('执行2方案代码')");
    }
    等等