日期:2014-05-17  浏览次数:20806 次

问一个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的作用域不同.