问一个asp过程变量的问题?
<% 
 function   nn(a,b) 
 nn=a-b 
 end   function 
 %>  
  <% 
 dim   q,a,b 
 a=4 
 b=3 
 q=nn(a,b) 
 response.write   q 
 %>      
 在function过程里没有定义a和b变量,而过程外有定义   dim   a,b这两个变量   
 所以过程里的参数a和b都是全局变量对不对?不对吗?不会吧,function过程里没有定义a和b啊   
 这里怎么这么容易让我联想起下面这段代码,下面这段代码过程里面没有定义a1, 
 而过程外定义了a1,所以过程里的a1就是全局变量,请问上面的function也是同理吗? 
 请给解释一下   
  <script   language= "vbscript ">  
 dim   a1      
 sub   aa()    
 msgbox( "欢迎! ")    
 a1=window.settimeout( "aa() ",2000, "vbscript ")    
 end   sub      
 sub   bb()    
 window.cleartimeout(a1)    
 end   sub    
  </script>       
  <p   align=center>     
  <span   onclick= "aa() "   style= "cursor:hand "> 调用 </span>     
  <span   onclick= "bb() "   style= "cursor:hand "> 清除 </span>     
  </p>         
------解决方案--------------------function nn(a,b)  'a,b是函数变量名,和外面   
 dim a 
 dim b的作用域不同.