[code=BatchFile]print A;[/code]

解决方案 »

  1.   

    参考:<script>
    var A = 26;
    var showlist = new Object();
    showlist.A = A;
    showlist.B = 0;
    showlist.toString = function(){
    (this.A==A)?++this.B:this.B=1;this.A=A;
    return this.B;
    }
    document.write(showlist+"<br />");
    document.write(showlist+"<br />");
    document.write(showlist+"<br />");
    A = 20;
    document.write("改变A=20<br />");
    document.write(showlist+"<br />");
    document.write(showlist+"<br />");
    document.write(showlist+"<br />");
    </script>
      

  2.   


    <SCRIPT LANGUAGE=javascript>
    <!--
    var A=5;  var calltimes=0;  var ValueChanged=0;
    function showlist(){
      for (var i=1;i<(A+1);i++){
        if (i==calltimes){
          document.getElementById("OUTPUT").innerHTML = i;
        }}}
    function changeA(n){
      if ((n*1-A)!=0){
        A=n*1;
        calltimes=0
        callA();
      }}
    function callA(){
      calltimes+=1;
      document.getElementById("calltimes").innerHTML = calltimes
      showlist(); 
    }
    //-->
    </SCRIPT>
    改变A<input type=text name=test onblur='javascript: changeA(this.value)'><br>
    <input type=button name=test value='调用A' onclick='javascript: callA()'><br>
    调用<span id='calltimes'>0</span>次
    <BR><BR><HR>
    <SPAN ID='OUTPUT'></SPAN>
    --------------------------------
    一个简单测试,没优化;不知道楼主是不是要实现这个效果
      

  3.   

    或者这样:<script>
    var A = 26;
    function test(){
        var AA = A;
        var B = 0;
        return function show(){
            (AA==A)?++B:B=1;AA=A;
            document.write(B);
        }
    }
    var showlist = new test();
    showlist();
    showlist();
    showlist();
    showlist();
    A=20;
    showlist();
    showlist();
    showlist();
    showlist();
    </script>