【 tulaoshi.com - Web开发 】
                             
                            如有纰漏之处,请指出,谢谢 
1、普通全局变量 
在browser里,引用一个全局变量,可以有很多方法,你可以直接引用该变量,也可以用window.variable来引用全局变量,原因是因为全局变量属于window的窗体,但是当每新开一个窗口,浏览器会自动清空先前已有变量(也就是说,每个新开页面都是一个“有清白之身的web页”,因此在新开的窗口里是不可以引用之前定义的变量,如果要引用,可以变向获取,如通过URL的参数传递等方法来获取,但这是后话了)如: 
script 
var global = "this is a global var." 
/script 
SCRIPT LANGUAGE="vbScript" 
!-- 
alert(window.global) 
alert(global) 
//-- 
/SCRIPT 
输出结果: 
this is a global var. 
this is a global var. 
2、vbs引用js的对象(非原型prototype对象)、函数 
可直接引用:即对象名.属性名 
SCRIPT LANGUAGE="JavaScript" 
!-- 
function obj(){}; 
obj.string="test"; 
obj.replacec=function(s){return s.replace(/c/,"")}; 
//-- 
/SCRIPT 
SCRIPT LANGUAGE="vbScript" 
!-- 
alert(obj.string) 
obj.string="change" 
alert(obj.string) 
alert(obj.replacec(obj.string)) 
//-- 
/SCRIPT 
输出结果: 
change 
hange 
当js是prototype型时,vbs可以用以下方法来访问js的成员 
SCRIPT LANGUAGE="JavaScript" 
!-- 
function myClass(s) 
{ 
 this.s=s 
 return this; 
}; 
myClass.prototype.output=function() 
{ 
 alert(this.s); 
} 
var obj=new myClass("blueDestiny"); 
//-- 
/SCRIPT 
SCRIPT LANGUAGE="vbScript" 
!-- 
obj.output() 
//-- 
/SCRIPT 
3、js里调用vbs里的class,可先在vbs里先生成一个实例,js可以通过这个实例来访问vbs的成员。 
SCRIPT LANGUAGE="vbScript" 
!-- 
class myClass 
 public s 
 public sub alertstring() 
 alert(s) 
 end sub 
end class 
set obj=new myClass 
//-- 
/SCRIPT 
SCRIPT LANGUAGE="JavaScript" 
!-- 
obj.s="blueDestiny" 
obj.alertstring() 
//-- 
/SCRIPT 
输出结果: 
blueDestiny 
4、js调用vbs定义的数组问题,可直接得用下标来获得第几个元素的值。 
SCRIPT LANGUAGE="vbScript" 
dim a(2) 
a(0)="blue" 
a(1)="destiny" 
/script 
script 
!-- 
alert(a(0)) 
alert(a(1)) 
//-- 
/SCRIPT 
输出结果: 
blue 
destiny 
但是,如何将vbs的数组转换成js的数组呢?可以利用js的VBArray()对象,以及toArray()方法,值得注意的是,toArray()方法得出的是一个一维数组: 
SCRIPT LANGUAGE="VBScript" 
!-- 
Function CreateVBArray() 
 Dim i, j, k 
 Dim a(2, 2) 
 '初始化二维数组 
 k = 1 
 For i = 0 To 2 
 For j = 0 To 2 
 a(j, i) = k 
 document.writeln(k) 
 k = k + 1 
 Next 
 document.writeln("BR") 
 Next 
 CreateVBArray = a 
End Function 
-- 
/SCRIPT 
SCRIPT LANGUAGE="JScript" 
!-- 
function VBArrayTest(vbarray) 
{ 
 //调用VBArray()对象,将vbs数组转化为js的数组并调用toArray()方法得到一维数组。 
 var a = new VBArray(vbarray); 
 var b = a.toArray(); 
 var i; 
 for (i = 0; i  9; i++)  
 { 
 document.writeln(b[i]); 
 } 
} 
VBArrayTest(CreateVBArray()); 
-- 
/SCRIPT 
输出结果: 
1 2 3  
4 5 6  
7 8 9  
1 2 3 4 5 6 7 8 9  
5、js数组转化为vbs数组: 
得到js的数组长度,可直接用length属性获得 
SCRIPT LANGUAGE="JavaScript" 
!-- 
var arr=["blue","Destiny"]; 
//-- 
/SCRIPT 
SCRIPT LANGUAGE="vbScript" 
!-- 
alert(arr.length) 
//-- 
/SCRIPT 
输出结果: 
2 
如果要通过下标访问js的数组元素,将无法获取,但可通过现有的方法:join()(js里的方法)以及Split() 
SCRIPT LANGUAGE="vbScript" 
!-- 
'注:这里不可用vbs的join(arr,",")方法,实际上这里所用到的是js里的join方法,并且为vbs的 
vbarr=arr.join(",") 
vbarr=split(vbarr,",") 
alert(vbarr(0)) 
alert(vbarr(1)) 
//-- 
/SCRIPT 
输出结果 
blue 
Destiny