仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 748|回复: 8
打印 上一主题 下一主题

[学习教程] ASP.NET网站制作之AJAX的JavaScript的反射机制

[复制链接]
老尸 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:41:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
另外,小型软件代码重用价值低,没有必要跨平台;大型软件,有严格的规划、部署,不可以随意跨平台。ajax|javascript  甚么是反射机制

  反射机制指的是程序在运转时可以猎取本身的信息。比方一个工具可以在运转时晓得本人有哪些办法和属性。

  在JavaScript中使用for(…in…)语句完成反射

  在JavaScript中有一个很便利的语法来完成反射,即for(…in…)语句,其语法以下:

for(varpinobj){
//语句
}
  这里varp暗示声明的一个变量,用以存储工具obj的属性(办法)称号,有了工具名和属性(办法)名,就能够利用方括号语法来挪用一个工具的属性(办法):

for(varpinobj){
if(typeof(obj[p]=="function"){
obj[p]();
}else{
alert(obj[p]);
}
}
  这段语句遍历obj工具的一切属性和办法,碰到属性则弹出它的值,碰到办法则立即实行。在前面能够看到,在面向工具的JavaScript程序计划中,反射机制是很主要的一种手艺,它在完成类的承继中发扬了很年夜的感化。

  利用反射来传送款式参数

  在Ajax编程中,常常要能静态的改动界面元素的款式,这能够经由过程工具的style属性来改动,好比要改动背景致为白色,能够如许写:

element.style.backgroundColor="#ff0000";
  个中style工具有良多属性,基础上CSS里具有的属性在JavaScript中都可以利用。假如一个函数吸收参数用用指定一个界面元素的款式,明显一个或几个参数是不克不及切合请求的,上面是一种完成:

functionsetStyle(_style){
//失掉要改动款式的界面临象
varelement=getElement();
element.style=_style;
}
  如许,间接将全部style工具作为参数传送了出去,一个style工具大概的情势是:

varstyle={
color:#ffffff,
backgroundColor:#ff0000,
borderWidth:2px
}
  这时候能够如许挪用函数:

setStyle(style);
  大概间接写为:

setStyle({color:#ffffff,backgroundColor:#ff0000,borderWidth:2px});
  这段代码看上往没有任何成绩,但实践上,在setStyle函数外部利用参数_style为element.style赋值时,假如element本来已有了必定的款式,比方已经实行过:

element.style.height="20px";
  而_style中却没有包含对height的界说,因而element的height款式就丧失了,不是最后所要的了局。要办理这个成绩,能够用反射机制来重写setStyle函数:

functionsetStyle(_style){
//失掉要改动款式的界面临象
varelement=getElement();
for(varpin_style){
element.style[p]=_style[p];
}
}
  程序中遍历_style的每一个属性,失掉属性称号,然后再利用方括号语法将element.style中的对应的属性赋值为_style中的响应属性的值。从而,element中仅改动指定的款式,而其他款式不会改动,失掉了所要的了局。有理由相信是能提供更出色的性能。很多平台无法支持复杂的编译器,因此需要二次编译来减少本地编译器的复杂度。当然可能做不到java编译器那么简易。
沙发
发表于 2015-1-19 21:17:20 | 只看该作者
可以看作是VC和Java的混合体吧,尽管MS自己讲C#内核中更多的象VC,但实际上我还是认为它和Java更象一些吧。首先它是面向对象的编程语言,而不是一种脚本,所以它具有面向对象编程语言的一切特性。
小妖女 该用户已被删除
板凳
发表于 2015-1-25 23:03:28 | 只看该作者
HTML:当然这是网页最基本的语言,每一个服务器语言都需要它的支持,要学习,这个肯定是开始,不说了.
乐观 该用户已被删除
地板
发表于 2015-2-4 11:52:20 | 只看该作者
ASP.NET:ASP.net是Microsoft.net的一部分,作为战略产品,不仅仅是ActiveServerPage(ASP)的下一个版本;它还提供了一个统一的Web开发模型,其中包括开发人员生成企业级Web应用程序所需的各种服务。ASP.NET的语法在很大程度上与ASP兼容,同时它还提供一种新的编程模型和结构,可生成伸缩性和稳定性更好的应用程序,并提供更好的安全保护。
活着的死人 该用户已被删除
5#
发表于 2015-2-9 22:26:40 | 只看该作者
主流网站开发语言之JSP:JSP和Servlet要放在一起讲,是因为它们都是Sun公司的J2EE(Java2platformEnterpriseEdition)应用体系中的一部分。
爱飞 该用户已被删除
6#
发表于 2015-2-28 02:07:48 | 只看该作者
CGI程序在运行的时候,首先是客户向服务器上的CGI程序发送一个请求,服务器接收到客户的请求后,就会打开一个新的Process(进程)来执行CGI程序,处理客户的请求。CGI程序最后将执行的结果(HTML页面代码)传回给客户。
兰色精灵 该用户已被删除
7#
发表于 2015-3-9 18:03:38 | 只看该作者
我觉得什么语言,精通就好,你要做的就是比其他80%的人都厉害,你就能得到只有20%的人才能得到的高薪。
愤怒的大鸟 该用户已被删除
8#
发表于 2015-3-17 00:11:47 | 只看该作者
ASP是把代码交给VBScript解释器或Jscript解释器来解释,当然速度没有编译过的程序快了。
若天明 该用户已被删除
9#
发表于 2015-3-23 09:17:00 | 只看该作者
比如封装性、继承性、多态性等等,这就解决了刚才谈到的ASP的那些弱点。封装性使得代码逻辑清晰,易于管理,并且应用到ASP.Net上就可以使业务逻辑和Html页面分离,这样无论页面原型如何改变。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2025-1-6 02:20

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表