javascript实例教程(20) OLE Automation(7)

2016-01-29 11:31 1 1 收藏

javascript实例教程(20) OLE Automation(7),&#106avascript实例教程(20) OLE Automation(7)

【 tulaoshi.com - Javascript 】

  使用JavaScript中的OLE Automation

7. 怎样处理集对象

Automation对象与其它的Jscript对象有些有相同的结构。它暴露了多种方法和属性,我们可以对它们进行处理。如果你从来没有接触Visual Basic,你可能就不熟悉集对象了。集就是相关项的组。集用在Visual Basic主要是为了保持跟踪许多事情,比如从你的程序(表单集)中装载表单,或者表单(控件集)中的所有控件。

Visual Basci提供了集类,这样你就可以创建你自己的集了。在集对象中的每一项被定义为一个Variant,即Visual Basic中的一种16字节的数据类型。OLE Automation集即使一些通过标准OLE界面暴露出来的集。一个集对象包含四个标准的元素:

(1)colObj.Add(item[, key][, before]);

Add()方法为集增加项。除了数据本省,你还可以利用从集中的得到的成员来指定一个关键数值。这里注意,最后一个参数不能通过Jscript来指定。

(2)colObj.Count

Count属性返回了在集中项的数目。

(3)colObj.Item(index)

Item()方法利用所以从集中取回项。

(4)colObj.Remove(index);

这个Remove()方法是通过所以来从集中删除项。


集跟数组很相似,但是有下面的理由反应集是更好的选择:


从数组中间删除一项是很笨拙的。而Remove()方法使得用户可以很容易地删除集中的任何项,这是根据它在集中的位置或者项的键。


你不必重新定义一个集对象,而在Visual Basic中要经常改变动态数组的长度。所以这会使得结果更清除,代码具有较好的可维持性。

(3)利用键,集对象有非常快速检索能力,而数组就不行了。即使你不知道项在集中的位置,你都可以键容易地找到它。

既然我们处理Automation 对象,所以熟悉集是很重要的。在的脚本中即会发现你正在处理它们,而且,你还会注意到Item()方法的重要性,如下所示:

colWorkOrders.Item("W050580").Priority = 4;

JavaScript处理集的主要问题是它没有任何的函数可以循环浏览集中的每一项。而在Visual Basic(或者VBScript)可以利用For Each..Next结构,但是利用Jscript是不可能的。这个问题是你在编写脚本的时候所应该解决的 

来源:https://www.tulaoshi.com/n/20160129/1482571.html

延伸阅读
  使用Javascript数组 在JavaScript 1.0中构造器只存在Date对象和用户定义的对象。你可能期望有个数组构造器,但是一直没能实现,直到JavaScript 1.1的出现,你的期望成为了现实。我们可以如下来定义用户对象: function blankArray(n) { for (var i=0; i < n; i++) this[i] = null; this.length = n; } blankArray函数创建了一...
标签: Web开发
使用javascript中的OLE Automation 6. 怎样提高脚本程序的性能 自从我们处理重的对象模型(比如Word.Application)和应用程序实例,注意系统的资源示相当重要的。一旦我们完成对应用程序实例的处理,我们必须去掉它,以从内存重清除对象的实例。在Jscript中有唯一的方法来实现,它就是应用程序对象的Quit()方法,以下是一个例子: var wdApp ...
标签: Web开发
使用javascript中的OLE Automation 2. 什么是绑定 在你适用一个对象模型的属性、方法和事件之前,你必需首先创建一个计划性的引用给包含了你想适用的属性、方法或者事件的类。你可以通过声明一个局部对象变量以保留一个引用给这个对象来实现这个目的。然后,你要为局部变量指定一个对象的应用。 VB和VBScript使用CreateObject()函数,来实现...
  HoTMetal中使用Javascript 7. 怎样识别所有的预定义的宏 HoTMetaL PRO 6.0定义了几个内部的事件,这些事件可以触发相应的宏。这些宏为: OnAction :当相应的菜单被点击中时,这个宏被触发; On_Application_Activate:当HoTMetaL在从磁盘装载后或者在你运行其它应用程序之后变为激活状态的时候,这个宏被触发; On_Application_D...
标签: Web开发
使用javascript中的OLE Automation 5. 怎样处理应用程序的实例 文档模板是应用程序和它支持的文档之间的连接。文档模板有两种类型:单一文档,它只能一次打开一个类型的文档;多文档模板,它允许多个文档同时被打开。下面的表格列出了Windows应用程序的各种类型: 单文档界面(SDI)应用程序 单文档界面(MDI)应用程序 老类型的应用程...

经验教程

500

收藏

6
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部