本人一直从事WEB前端开发工作,所以对CSS和JavaScript是比较熟悉的,同时工作之余也会玩玩后台编程,自然对C#也是了解的,也知道C#是微软.NET平台的主推语言,本人也在提高中。同时我也想过能否用自己最熟悉的JavaScript作为后台编程语言,我这里指的不是传统的ASP,而是ASP.NET,抱着这个想法,最终被我发现了JScript .NET可以实现我的需求,首次使用再此做个笔记。当然我只是拿它来玩玩的,因为把JScript .NET作为实际项目的开发语言显然是很不明聟的,因为用的人太少,文档也少,也不便于团队合作开发大项目,最糟糕的是它没有一个好的开发与调试IDE,连微软自己的VS都不能很好支持(这里指对操作.NET方面的方法属性等提供自动完成及调器功能,而不是基本JS编写,如果是基本编程可以选择Apatana和VS2008)。
相信大家对JavaScript绝对不会陌生,因为你对AJAX并不陌生,其实JScript就是微软版本的JavaScript,它几乎与JavaScript是一样的,而且还扩展了部分实用方法。在早期ASP流行的时候,它也与VBscript一样可以作为服务器端运行的脚本语言。而JScript .NET可以说是JScript的最新版本,即JScript 8.0,它在功能上有质的突破,它的设计目的是为JScript开发人员提供访问.NET公共类库的方法,即它可以开发基于.NET平台的应用程序,甚至是.NET WinForm程序。通过对JScript 8.0文档了解,发现我们可以通过.NET SDK或VS IDE把JS文件编译成exe或dll文件,而这些文件又因为是基于.NET通用中间语言编译的,所以又可以被其它语言访问,这一定让你大开眼界。
通过对JScript .NET的了解以及将其与同类语言对比,我们很容易发现它的优势:
(1)功能更丰富。提供了众多额外实用方法和特性。
(2)更面向对象。直接提供类与继承等关键字,可以显式声明变量类型,还有包的概念和定义方法,方便代码组织和管理。
(3)执行可以更快。与.NET平台支持其它语言一样,支持编译执行,执行效率与其它语言几乎是同等的。
代码相当简单,就不加注释了,你可以看到常见的.NET方法。本人测试通过,数据库连接与SQL语句改成你自己实际查询数据,要求.NET 2.0以上环境。本例非原创,网上抄的。
(1)通常情况下我们在ASP.NET WEB控件页(ASPX文件)页头用Page指令指定了页面使用默认编程语言后,在HTML正文我们可以使用像<% %>的方式来包含执行代码块。但是我发现使用Page_Load方法或操作一些ASP.NET服务器控件的时候,必须使用带runat=”server”属性的<script>块,否则什么内容都不输出,不知道是不是我的系统问题,还望有朋友指点。
(2)JScript官方文档说对于变量类型的声明,可以指定也可以不指定,比如像var sql:String可以简单写成var sql,但是我发现有些变量的类型是一定要声明的,不然也会有问题,比如function Page_Load(sender,e:EventArgs)中的e就要显式声明为EventArgs类型,否则你也将得不到预期效果。