<marquee width=358>欢迎来到月影社区,希望这里可以成为您美丽的梦幻花园,如果你觉得这里好请分享给您的朋友!- wf66.com</marquee> 将月影社区设置为您的首页将月影社区地址加入到您的收藏栏
月影社区时尚音乐音乐查询IP手机许愿之瓶最新更新文件加密访客留言爱音乐
欢迎您,首页 >> 信息中心 >> ASP系列讲座(五)使用变量和常量

请输入您关键字:


ASP系列讲座(五)使用变量和常量

推荐查看本文HTML版本


变量是计算机内存中已命名的存储位置,其中包含了数字或字符串等数据。变量包含的信息被称为变量的值。变量使用用户便于理解脚本操作的名称为用户提供了一种存储、检索和操作数据的途径。
声明和命名变量
命名和声明变量应遵循脚本语言的规则及指导。即使在使用变量前不需要去声明变量,也应养成在编程时声明变量的良好习惯,因为这样有助于防止错误发生。声明一个变量意味着告诉脚本引擎,有一个特定名称的变量,这样就可以在脚本中引用该变量。
VBScript
VBScript 并不需要声明变量,但在使用所有变量前声明它们是一种好的脚本书写习惯。要在 VBScript 中声明变量,请用 Dim、 Public 或 Private 语句。例如:
<% Dim UserName %>
可以在需要显式声明变量的 .asp 文件中用 VBScript Option Explicit 语句。Option Explicit 必须在任何一个 ASP 指令之后及任何一个 HTML 文本或脚本命令之前出现。该语句仅影响用 VBScript 书写的 ASP 命令,而不会影响 JScript 命令。
JScript
Microsoft JScript 仅当变量为本地过程变量时才需声明,但在使用所有变量前声明它们是一种好的脚本书写习惯。要声明一个变量,请使用 var 语句。例如:
<% var UserName; %>
变量作用域
变量的作用域即生命期,决定哪些脚本命令可访问变量。在过程内部声明的变量具有局部作用域。每执行一次过程,变量就被创建然后消亡。而过程外部的任何命令都不能访问它。在过程外部声明的变量具有全局作用域,其值能被 ASP 页上的任何脚本命令访问和修改。
声明变量时,局部变量和全局变量可以有相同的名称。而改变其中一个的值并不会改变另一个的值。如果没有声明变量,则可能不小心会改变一个全局变量的值。例如,以下脚本命令返回值 1,虽然有两个名为 Y 变量:
<%
Dim Y
Y = 1
Call SetLocalVariable
Response.Write Y
Sub SetLocalVariable
  Dim Y
  Y = 2
End Sub
%>
由于变量没有显式声明,以下的脚本命令将返回 2。当过程调用将 Y 设置为 2 时,脚本引擎认为该过程是要修改全局变量:
<%
Y = 1
Call SetLocalVariable
Response.Write Y
Sub SetLocalVariable
  Y = 2
End Sub
%>
养成显式声明所有变量的编程习惯可以避免许多问题。尤其在当您用 #include 语句将文件包含进 ASP 主页时,就显得更为重要。一个独立文件中被包含的脚本是被当作整个包含它的文件的一部分来处理的。用不同的名称来命名主脚本和被包含脚本中用到的变量,这容易被遗忘,除非声明变量。[月影社区 http://wf66.com/]
为变量赋予会话或应用程序作用域
全局变量仅在单个 ASP 页中可用,要使它在单个 ASP 页之外可用,就必须为变量赋予会话或应用程序作用域。会话作用域变量对一个用户所请求的 ASP 应用程序中的所有页都是可用的。应用程序作用域变量也如此。对单个用户来说,会话变量是存储信息的最佳途径,例如,首选项、用户名或用户标识。对于一个特殊应用程序的所有用户,应用程序作用域是存储信息的最佳途径,例如,应用程序特定的问候语或应用程序所需的初始值。
ASP 提供两个内建对象来让您存储变量:Session 对象和 Application 对象。
您也可以创建具有会话或应用程序作用域的对象实例。
会话作用域
要为变量赋予会话作用域,将该变量存储到 Session 对象中即可,方法是为该对象的已命名条目指派一个值。例如,以下命令将两个新的变量存储到 Session 对象中。
<%
Session("FirstName") = "Jeff"
Session("LastName") = "Smith"
%>
要 Session 对象中检索信息,可以用输出指令 (<%=) 或 Response.Write 访问已命名的条目。以下示例用输出指令显示 Session("FirstName") 的当前值:
Welcome <%= Session("FirstName") %>
可在 Session 对象中存储用户首选项,然后就可以访问这些首选项,从而决定将哪一页返回给用户。例如,您可以允许用户在应用程序的第一页指定纯文本内容,然后将这一选择应用到用户在该应用程序中访问的所有后续页。
<% If Session("ScreenResolution") = "Low" Then %>
This is the text version of the page.
<% Else %>
This is the multimedia version of the page.
<% End If %>
应用程序作用域
要为变量赋予应用程序作用域,将该变量存储到 Application 对象中即可,方法是为该对象的已命名条目指派一个值。例如,以下命令将一个应用程序特定的问候语存储到Application 对象中:
<% Application("Greeting") = "Welcome to Exploration Air" %>
要从 Application 对象中检索信息,可以使用 ASP 输出指令 (<%=) 或 Response.Write 从该应用程序的任意后续页中访问已命名条目。以下示例用输出指令显示 Application("Greeting") 的值:
<%= Application("Greeting") %>
使用常量
常量是用来代替一个数或字符串的名称。一些随 ASP 提供的基本组件,例如 ActiveX Data Objects (ADO),定义了您在脚本中可以使用的常量。组件可在一个组件类型库中声明常量,组件类型库是一个包含 ActiveX 组件所支持的对象和类型的信息的文件。一旦在 Global.asa 文件中声明了一个类型库,您就可以在该应用程序的任意页中使用已定义的常量。
可在 Global.asa 中用 <METADATA> 标记为应用程序声明类型库。例如,要声明 ADO 类型库,可用以下语句:
<!--METADATA TYPE="typelib"
FILE="c:\program files\common files\system\ado\msado15.dll"
-->
这样,您就可以在与 Global.asa 文件相同的应用程序的中使用 ADO 常量。在下面的示例中,adOpenKeyset 和 adLockOptimistic 是 ADO 常量:
'Create and Open Recordset Object
Set RsCustomerList = Server.CreateObject("ADODB.Recordset")
RsCustomerList.ActiveConnection = OBJdbConnection
RsCustomerList.CursorType = adOpenKeyset
RsCustomerList.LockType = adLockOptimistic
在以前版本的 ASP 中,一些组件在文件中提供常量定义,每个使用那些组件的 ASP 文件必须包含该文件。用 #include 指令来包含常量定义的用法仍被支持,但使用类型库通常更方便并且能使脚本更易于升级。在以后版本的 ASP 中,组件可能将不再提供常量定义文件。
您可以定义自己的常量。在 VBScript 中,用 Const 语句,在 JScript 中,用 var 语句。如果在多个 ASP 页中使用常量,可在独立的文件中放置常量,然后将其包含进每一个使用该常量的 ASP 文件中去。

ASP系列讲座(五)使用变量和常量 2006-9-8
转到本主题第:[ 1 ]
相关评论

暂无评论

总计0页 [ ]上一页 下一页
发表评论(揪错)
呢称: * 您尚未登陆,请登录
来自: *
内容:
 

(为防止非法信息,您的言论提交后需要审核才能正常显示)

文学
精品文萃 情感天地 言情小说
网络小说 玄幻小说 悬疑恐怖
武侠小说 古典品谈 外国名著
儿童文学 会员原创 学习园地
杂谈其它
娱乐
爆笑网文 星座占卜 影音动漫
娱乐新闻 影视剧情
诗词
青竹诗歌 个人诗集 宋词雅赏
全唐诗录
新闻
国际新闻 国内新闻 科技新闻
体育新闻
图片
图文专区 艺术长廊 桌面壁纸
精品素材 像素图片
漫画
单幅漫画 爆笑四格 连环漫画
电脑
电脑入门 图形图像 编程开发
游戏
我爱Q宠 最新攻略 最新秘籍
游戏新闻 技巧心得
经济
帕格节电 财经资讯 股市证券
生活
百科知识 外语学院 潮流时尚
健康医疗 宠物花卉 汽车地带
行走天下
美食
面食甜点 家常菜品 药膳食疗
美食天下 烹饪技巧 松辽风味
燕京风味 巴蜀风味 滇黔风味
赣江风味 徽皖风味 闽台风味
齐鲁风味 中州风味 岭南风味
荆楚风味 三晋风味 淞沪风味
苏扬风味 潇湘风味 钱塘风味
民族风味 素斋仿荤
营销
管理杂谈 谈经论道 培训激励
经营战略 职场生涯 公关交际
关于我们版权声明本站导航友情连结作品演示 TOP↑
本论坛言论纯属发表者个人意见,与£月影社区£立场无关。 皖ICP备16024038号-1
禁止发布任何色情/政治/反动相关信息让我们共同来营造一个属于我们的梦幻家园
Copyright ©2001-2006 MoonShadow. All rights reserved.  Version 4.0  Licence 2006.4.2
建站天数:7186天 本站基于ASP+JS构建,完全自主开发,版权归属月影社区 管理员QQ:23165062 Time:93ms