`
fp_moon
  • 浏览: 983091 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

javascript|js|jscript|vbscript|对象|数据 共享

阅读更多

javascript|js|jscript|vbscript|对象|数据 共享
================================================================================
1.普通全局变量 (可以直接相互引用,但必须定义在引用之前就行)
2.对象互引用 :
  (1).vbs调js:非原型prototype对象通过函数名.属性来调用属性;原型prototype对象通过调用*被引用      方new的对象*然后对象.属性名

来调用属性。
  (2).js调vbs:调用vbs的类new出来的对象来达到调用属性和方法的目地;vbs中的顶层方法(不在类体中的)JS直接通过函数名来调用。
3.数组互引用:
  (1)js调用vbs:
     可以直接通过VBS的数组名来访问成员但不可直接用length属性,如果想其转化为JS数组:
   可以在JS中调用new VBArray(vbs数组)对象,将vbs数组转化为js的数组并调用toArray()方法得到一维数组。
  (2)vbs调用js:
    得到js的数组长度,可直接用length属性获得
    如果要通过下标访问js的数组元素,将无法获取,但可通过现有的方法:join()(js里的方法)以及Split()将js数组转化为vbs数组
  
================================================================================
1、普通全局变量 (可以直接相互引用,但必须定义在引用之前就行)
在browser里,引用一个全局变量,可以有很多方法,你可以直接引用该变量,也可以用window.variable来引用全局变量,原因是因为全局变

量属于window的窗体,但是当每新开一个窗口,浏览器会自动清空先前已有变量(也就是说,每个新开页面都是一个“有清白之身的web页”,

因此在新开的窗口里是不可以引用之前定义的变量,如果要引用,可以变向获取,如通过URL的参数传递等方法来获取,但这是后话了)如:
<script type="text/javascript">
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

分享到:
评论

相关推荐

    css,DHTML,javascript,vbscript 全套手册

    JavaScript还支持事件处理、函数、面向对象编程,并且可以通过Ajax技术异步与服务器通信,实现无刷新的数据交换。现代JavaScript已经发展出了Node.js平台,可以在服务器端进行开发。 【VBScript(Visual Basic ...

    ASP页面内VBScript和JScript的交互.docx

    VBScript是Visual Basic的一种轻量级版本,而JScript则是JavaScript的微软实现,它们都支持在ASP环境中编写网页逻辑。 在ASP页面内,VBScript和JScript可以同时存在并进行交互,以利用各自的优势。ASP本身负责管理...

    ASP页面内VBScript和JScript的交互.pdf

    标题提到的"ASP页面内VBScript和JScript的交互"是指在同一个ASP文件中,如何让VBScript和JScript代码协同工作,共享数据和调用对方的内置函数。以下将详细阐述这一点: 1. **内置函数的差异**: VBScript和JScript...

    ASP JavaScript 学习

    - 脚本语言:ASP支持多种脚本语言,如VBScript和JScript,其中JScript是JavaScript的服务器端版本。 - 变量与数据类型:了解ASP中的变量声明和数据类型,如String、Integer、Date等。 - 控制结构:学习如何使用If...

    JScript中文参考手册

    1. **语法特性**:JScript与JavaScript语法基本相似,但有一些微小差异,如JScript支持VBScript风格的数组声明和类型转换。 2. **变量声明**:在JScript中,使用`var`关键字声明变量,遵循变量作用域规则,有全局和...

    VBscript脚本.rar

    `VBScript脚本.ppt`可能是一份详细的VBScript教程,其中可能涵盖了VBScript的基础语法、对象模型、错误处理以及与其他Web技术(如JavaScript和JScript)的交互等内容。PPT这种格式常常用于教学,每一页可能包含关键...

    Provides compatibility helper methods for Classic ASP VBScript t

    7. **代码转换**:从VBScript到JavaScript的转换过程可能涉及到语法、函数和对象的映射,以保持原有逻辑的完整性。 8. **运行时环境**:转换后的JavaScript代码需要一个环境来运行,这个“runtime”可能提供了必要的...

    VBScript语言参考

    2. **JScript vs VBScript**:在ASP中,JScript(JavaScript的微软版本)和VBScript都是可选的脚本语言,但VBScript更为常见,因为其与Visual Basic的语法相似性。 3. **客户端脚本**:虽然现在更倾向于使用...

    ASP和VBScript的帮助文档

    3. **内置对象**:ASP提供了一系列内置对象,如Request、Response、Session、Application等,它们帮助开发者获取用户请求信息、向客户端发送响应、管理会话状态以及共享应用程序级数据。 - Request对象:用于获取...

    完全接触ASP之JScript(PDG)

    4. **Application对象**:在整个应用程序生命周期内共享数据,所有用户都可以访问。 5. **Server对象**:提供服务器级别的功能,如文件系统操作、URL编码解码等。 **外部ActiveX控制** ActiveX是微软的一种技术,...

    VBSCRIPT 速查手册

    10. **JScript兼容**:虽然VBScript和JScript(JavaScript的一个变体)在某些方面不完全兼容,但它们共享相同的宿主环境,如Internet Explorer,可以在同一页面上混合使用。 11. **ASP应用**:VBScript广泛应用于...

    asp语法+css语法+html语法+JavaScript语法等的电子书

    3. **内置对象**:Request、Response、Session、Application等,用于处理用户请求、发送响应、管理会话和共享数据。 4. **数据库访问**:ASP可以与SQL Server等数据库连接,实现数据的读写操作。 **CSS(Cascading ...

    asp,html,shtml,javascript,css_ppt

    在ASP中,可以访问和使用各种内置对象,如Request对象用于获取客户端发送的数据,Response对象负责向客户端发送数据,Session对象用于管理用户的会话信息,Application对象则提供了在整个应用程序范围内共享数据的...

    《新手学ASP动态网页开发贯通HTML和JavaScript》.(薛小龙).[PDF].pdf

    - **Application对象**:类似于Session对象,但存储的信息对所有用户都是可见的,适用于需要在多个用户之间共享数据的应用场景。 - **Server对象**:提供了许多有用的内置函数,如转换URL编码、创建COM对象等。 ###...

    橙色企业经典源码,欢迎大家下载,共享花钱买的商业源码啦!

    Application对象用于在整个应用程序生命周期内共享数据;Server对象提供对服务器上的方法和属性的访问。 3. ASP与数据库交互:ASP可以通过ADO(ActiveX Data Objects)来连接和操作各种数据库。ADO提供了一组统一的...

    免费图片上传共享相册 -ASP源码.zip

    4. **Session和Application对象**:这两个对象用于在服务器端管理用户会话和全局变量,Session用于跟踪单个用户的状态,Application则在整个Web应用程序生命周期内共享数据。 5. **服务器端包含**:ASP支持使用&lt;!--#...

    基于ASP的数据合并排序提取批量查询实用小工具.zip

    Session和Application对象则用于存储和共享用户或所有用户的数据。 3. **数据库连接**:在ASP中,我们可以使用ADO(ActiveX Data Objects)来与各种数据库进行交互。ADO提供了一套统一的接口,可以访问SQL Server、...

    ASP实例开发源码—Ajax简易留言本 asp版.zip

    3. **JSON数据格式**:虽然名字中有XML,但现代Ajax更倾向于使用JSON(JavaScript Object Notation)作为数据交换格式,因为JSON更轻量、解析更快,且可以直接被JavaScript对象表示。 4. **DOM操作**:Ajax获取到...

    ASP实例开发源码—Angel工作室学校培训网站网站管理系统.zip

    - Application对象用于在整个应用程序生命周期内共享数据,这不同于Session,它的作用范围是所有用户共享。 6. Server对象: - Server对象提供了一些服务器级别的功能,比如执行服务器端的函数和方法,转换路径等...

Global site tag (gtag.js) - Google Analytics