脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - VBS - vbscript 可以按引用传递参数吗?

vbscript 可以按引用传递参数吗?

2019-11-21 14:43脚本之家 VBS

Vbscript可以按引用传递参数吗? 比如说 functionddd(str) str=str12345 endfunction abc=54321 想通过ddd(abc),把abc变成5432112345 要怎么改动才行呢? 回答: scriptlanguage=vbs function ddd(str) str=str 12345 end function abc= 54321 dddabc msgboxabc /script 没发现要改动的

Vbscript可以按引用传递参数吗?

比如说

functionddd(str)

str=str&"12345"

endfunction

abc="54321"

想通过ddd(abc),把abc变成“5432112345”

要怎么改动才行呢?

回答:

  1. <script language=vbs>  
  2. function ddd(str)  
  3. str=str & "12345"  
  4. end function  
  5.  
  6. abc="54321"  
  7. ddd abc  
  8. msgbox abc  
  9. </script> 

没发现要改动的地方啊

其实vbscript默认的传递参数方式就是byref,如果要传值,反倒要写成

functionddd(byvalstr)

...

但是在JS中调用VBS定义的函数时,参数则是按值传递,指明byRef也没有用

如果要改变值,可以用对象包装起来,如

  1. <script language=vbs>  
  2. sub chgArg(a)  
  3.   a.x=100  
  4.   a.y=100  
  5. end sub  
  6. </script>  
  7.  
  8. <script language=jscript>  
  9. var t={x:0,y:0,show:function(){alert("this.x="+this.x+",this.y="+this.y)}}  
  10. t.show();  
  11. chgArg(t);  
  12. t.show();  
  13. </script> 

延伸 · 阅读

精彩推荐