下载 >  开发技术 >  VB > asp 完全教程
4分

asp 完全教程

<br>ASP页面内VBScript和JScript的交互<br><br> ASP 具备管理不同语言脚本程序的能力,能够自动调用合适的脚本引擎以解释脚本代码和执行内置<br>函数。ASP开发环境提供了两种脚本引擎,即VBScript(缺省)和JScript。不过,开发者并没有被限制<br>于只能使用这两种语言,只要能够提供合适的ActiveX脚本引擎就能使用任何脚本语言。 <br>   脚本语言的选择往往基于许多不同原因:它可能是开发者最为熟悉的语言,可能是对给定工程来说<br>能够提供最多特色支持的,也有可能是最具效率的。不同的环境和要求使得我们在选择脚本语言时注重<br>不同的因素,同时也使得我们在某些时候面临选定的脚本语言不能直接提供其它语言固有的函数这一问<br>题,或某个脚本已经写成但用的却是另外一种脚本语言。 <br>   此时应该怎么办?是否需要用当前所用的脚本语言重写这些脚本?或者说,是否有可能在一种脚本<br>语言中调用其它脚本语言的内置函数?本文要说明的就是在ASP应用中如何让VBScript脚本 和JScript脚<br>本交互以最大限度地获得两种脚本语言的特色支持。 <br><br>  一、VBScript和JScript的内置函数 <br>   在VBScript和JScript 中,有大量的内置函数功能是相同或类似的。然而,在一种脚本语言中内置<br>的函数并非总是在另外一种脚本语言中也有对应的函数。例如,VBScript提供了许多用于操作字符串和<br>格式化数据的函数,这些函数在JScript中并不存在。这些函数包括StrReverse()、Filter()以及Forma<br>tCurrency()等。在另一方面,JScript所提供的用于管理数组、字符串编码等的函数在VBScript中也没<br>有定义,如join()、reverse()、pow()、位操作、escape()和unescape()等。 <br>   那么,如果在JScript程序中需要一个VBscript函数该怎么办呢? <br><br>   二、异种脚本的互相调用 <br>   如果需要在JScript脚本中调用一个VBScript中内置的函数,则应该写一个VBScript用户定义函数<br>(在这里调用VBScript内置函数),然后在JScript脚本中象调用公用JScript函数一样调用这个用户定<br>义函数。 <br><br> 例如,如果要调用的VBSCript内置函数是FormatCurrency(),则可以声明如下自定义函数: <br> <SCRIPT LANGUAGE="VBSCRIPT" RUNAT="SERVER"><br>  Function FormatValue(Value) <br>  FormatValue = FormatCurrency(Value)<br>  End Function<br>  </SCRIPT><br> 接下来在JScript代码中就可以象普通JScript 函数一样调用FormatValue()了。用类似的方法也可<br>以实现VBScript代码调用JScript函数。 <br>   应用同样的规则,我们可以在任何脚本内调用任何用户定义函数。不过,从JScript 脚本内调用一<br>个不带参数的VBScript过程(Sub)时应略加注意,此时在JScript中应该象调用一个不带参数的JScrip<br>t函数一样调用它,如用foo()调用VBScript Sub foo过程。<br><br>  三、数据共享 <br>  在某些情形下混合运用VBScript和JScript 函数是非常有用的,但在不同语言脚本之间共享数据也<br>可能很有用。实现这种共享的方法很简单:不管使用的是什么语言,只要是在页面级声明的变量就可以<br>任意引用。 <br>   对象的使用方法也相似,可以任意选用合适的语言读取、修改属性或调用对象的方法。当然给定对<br>象的属性和方法是由创建该对象实例的语言所定义的。正如上例VBScript的过程调用,当从JScript 中<br>调用一个不带参数的VBScript对象的方法时,其调用方法也遵从JScript的调用规则,反之亦然。 <br><br>  四、数组管理 <br>   数组共享问题稍微复杂一点。虽然数组也象其它变量一样可以在不同语言脚本之间共享,但必须注<br>意兼容方面的问题。 <br>   VBScript数组在JScript下可以用VBScript的符号引用,即用myArray(2)引用数组元素而不是JScri<br>pt的数组元素引用符号myArray[2]。此外,还可以使用一个特殊的JScript对象——VBArray对象将VBSc<br>ript数组转换为JScript数组。下面的代码从VBScript数组myVBArray创建JScript数组myJSArray: <br> var Temp = new VBArray(myVBArray)<br> var myJSArray<br> myJSArray = Temp.toArray()<br> 上述代码首先创建一个临时的VBArray对象,然后使用它的toArray()方法将自己转换为JScript 数<br>组。此后就可以象普通JScript数组一样用myJSArray,如 myJSArray[1]。但应当注意的是,toArray()<br>方法将把一个多维的VBArray转换为一维的JScript数组。 <br><br> 从VBScript中引用JScript数组更为复杂。虽然在VBScript中我们可以直接访问JScript数组相关的<br>方法和属性,但没有直接访问JScript数组的单个元素的方法。也就是说,我们可以在VBScript 脚本中<br>读取JScript数组的长度属性,如下所示:<br><br> x = myJSArray.length <br><br>  但无法直接读取该数组的单个元素,下面的VBScript代码是不正确的: <br><br>  x = myJSArray(3) <br><br> 解决该问题的一个可行的方法是执行一个转换过程,如下面的代码所示,此处假定VBScript是缺省<br>的脚本语言: <br><%<br>  Dim Temp<br>  Dim myVBArray<br>  Temp = myJSArray.join(", ")<br>  myVBArray = Split(Temp, ", ")<br>%><br> 此处的JScript join()方法将数组myJSArray元素转换到一个以逗号为分割符的字符串, VBScript<br>Split()函数将字符串转换为VBScript数组。注意这里我们是在VBScript环境下调用JScript的join方法<br>依照此例,我们可以通过自定义VBScript函数来模拟JScript的VBArray对象的toArray()方法以实现JSc<br>ript数组到VBScript数组的转换。 <br><br> 五、小结 <br>  在同一个ASP 工程内灵活选用不同脚本语言具有许多优点,这些脚本之间的交互能力更为开发者集<br>成不同语言所提供的内置函数和其它功能带来了更多的机会,同时也使得实现既可用于VBScript也可用<br>于JScript环境的通用脚本库成为可能。 <br> ...展开详情收缩
2007-07-30 上传大小:475KB
立即下载 开通VIP
分享
收藏 举报

评论共有1条

water_lwj 2013-10-31 09:41:26
对学习asp有些帮助
 
ASP完全教程html版 立即下载
3积分/C币
ASP.NET完全入门(高清pdf).zip 立即下载
3积分/C币
ASP完全教程 立即下载
3积分/C币
ASP 10DAY asp完全自学教程 立即下载
3积分/C币
ASP完全教程(详细讲解asp操作,组件对象,数据库) 立即下载
3积分/C币
ASP完全教程下载版 立即下载
3积分/C币
ASP完全教程(帮助文档) 立即下载
3积分/C币
最新的ASP完全教程 立即下载
3积分/C币
asp完全教程 立即下载
3积分/C币
asp编程1.0网页设计 立即下载
3积分/C币

热点文章

  • ASP完全教程html版

    2009-08-24 qthornbird
  • ASP.NET完全入门(高清pdf).zip

    2010-09-08 jianxin19810424
  • ASP完全教程

    2008-06-12 eddy520
  • ASP 10DAY asp完全自学教程

    2010-06-01 q364988343
  • ASP完全教程(详细讲解asp操作,组件对象,数据库)

    2008-09-17 shiqinghua
  • ASP完全教程下载版

    2009-09-21 zbihong
  • ASP完全教程(帮助文档)

    2009-12-16 yu8fei
  • 最新的ASP完全教程

    2008-11-12 adsl0997
关闭
img

spring mvc+mybatis+mysql+maven+bootstrap 整合实现增删查改简单实例.zip

资源所需积分/C币 当前拥有积分 当前拥有C币
5 0 0
点击完成任务获取下载码
输入下载码
为了良好体验,不建议使用迅雷下载
img

asp 完全教程

会员到期时间: 剩余下载个数: 剩余C币: 剩余积分:0
为了良好体验,不建议使用迅雷下载
VIP下载
您今日下载次数已达上限(为了良好下载体验及使用,每位用户24小时之内最多可下载20个资源)

积分不足!

资源所需积分/C币 当前拥有积分
您可以选择
开通VIP
4000万
程序员的必选
600万
绿色安全资源
现在开通
立省522元
或者
购买C币兑换积分 C币抽奖
img

资源所需积分/C币 当前拥有积分 当前拥有C币
5 4 45
为了良好体验,不建议使用迅雷下载
确认下载
img

资源所需积分/C币 当前拥有积分 当前拥有C币
5 0 0
为了良好体验,不建议使用迅雷下载
VIP和C币套餐优惠
img

资源所需积分/C币 当前拥有积分 当前拥有C币
5 4 45
您的积分不足,将扣除 10 C币
为了良好体验,不建议使用迅雷下载
确认下载
下载
无法举报自己的资源

兑换成功

你当前的下载分为234开始下载资源
你还不是VIP会员
开通VIP会员权限,免积分下载
立即开通

你下载资源过于频繁,请输入验证码

您因违反CSDN下载频道规则而被锁定帐户,如有疑问,请联络:webmaster@csdn.net!

举报

若举报审核通过,可返还被扣除的积分

  • 举报人:
  • 被举报人:
  • *类型:
    • *投诉人姓名:
    • *投诉人联系方式:
    • *版权证明:
  • *详细原因: