JavaScript、Jscript、VBScript、ASP的区别
很多人都被这几个名词搞糊涂了,这里做个归纳,彻底澄清这几种概念。
JavaScript
JavaScript 最先由 Netscape 公司开发,原名叫 LiveScript,设计该语言时部分参考了Java,并且当时Java语言火热得很,因此不久就改名为JavaScript。Netscape 公司在其网景浏览器上实现了该语言,应用于客户端开发。
Jscript
这里不得不先提一下微软的一款产品VBScript,其语法怪异(对于Java程序员来说),缺乏OOP概念的支持等原因,导致VBScript叫好不叫座,于是财大气粗的微软仿照崭新的客户端语言JavaScript打造出自家的Jscript,希望能抢占市场。就目前来说JavaScript与Jscript,几乎没有区别。
VBScript
如上面所说,VBScript是微软的产品,开始时应用于客户端开发。后来有了动态脚本的概念后(ASP出来了),微软就把该产品与自家的Jscript两种语言各自实现了动态脚本的概念。
ASP
ASP全称是Active Server Page,这是一种技术而不是一种语言,现在大部分ASP都使用 VBScript 来实现,服务器IIS默认的语言也是VBScript。既然有默认语言,那么就表示有非默认的语言,没错,就是Jscript,如前面所说,Jscript也能应用在服务端,甚至完全替代VBScript,操作数据库等。
这也就是说,VBScript 与 Jscript 两种脚本语言既能应用与客户端,也能应用与服务端。看看下面的例子:
<script language="vbscript">
<!--
//客户端脚本vbs
response.write "demo text..." //不区分大小写,语法相当宽松
-->
</script>
<script language="Javascript">
<!--
//客户端脚本js
document.write("demo text...") //内置对象必须区分大小写
-->
</script>
<script language="vbscript" runat="server" >
<!--
//服务端脚本vbs
response.write "demo text..." //不区分大小写,语法相当宽松
-->
</script>
<script language="javascript" runat="server" >
<!--
//服务端脚本js
Response.Write("demo text...") //ASP内置对象必须区分大小写 -->
</script>
或者:
<%@LANGUAGE="JAVASCRIPT"%> //放在服务端页面第一行,表示该页默认使用Javascript脚本,在页面的其他地方使用<%'code...%>,解释器就认为这是第一行定义的语言
<%@LANGUAGE="VBSCRIPT"%> //放在服务端页面第一行,表示该页使用VBSCRIPT脚本,在页面的其他地方使用<%'code...%>,解释器就认为这是第一行定义的语言
另外,.vbs与.js还能在被 Window Script Host (WSH) 所解释运行
JavaScript
JavaScript 最先由 Netscape 公司开发,原名叫 LiveScript,设计该语言时部分参考了Java,并且当时Java语言火热得很,因此不久就改名为JavaScript。Netscape 公司在其网景浏览器上实现了该语言,应用于客户端开发。
Jscript
这里不得不先提一下微软的一款产品VBScript,其语法怪异(对于Java程序员来说),缺乏OOP概念的支持等原因,导致VBScript叫好不叫座,于是财大气粗的微软仿照崭新的客户端语言JavaScript打造出自家的Jscript,希望能抢占市场。就目前来说JavaScript与Jscript,几乎没有区别。
VBScript
如上面所说,VBScript是微软的产品,开始时应用于客户端开发。后来有了动态脚本的概念后(ASP出来了),微软就把该产品与自家的Jscript两种语言各自实现了动态脚本的概念。
ASP
ASP全称是Active Server Page,这是一种技术而不是一种语言,现在大部分ASP都使用 VBScript 来实现,服务器IIS默认的语言也是VBScript。既然有默认语言,那么就表示有非默认的语言,没错,就是Jscript,如前面所说,Jscript也能应用在服务端,甚至完全替代VBScript,操作数据库等。
这也就是说,VBScript 与 Jscript 两种脚本语言既能应用与客户端,也能应用与服务端。看看下面的例子:
<script language="vbscript">
<!--
//客户端脚本vbs
response.write "demo text..." //不区分大小写,语法相当宽松
-->
</script>
<script language="Javascript">
<!--
//客户端脚本js
document.write("demo text...") //内置对象必须区分大小写
-->
</script>
<script language="vbscript" runat="server" >
<!--
//服务端脚本vbs
response.write "demo text..." //不区分大小写,语法相当宽松
-->
</script>
<script language="javascript" runat="server" >
<!--
//服务端脚本js
Response.Write("demo text...") //ASP内置对象必须区分大小写 -->
</script>
或者:
<%@LANGUAGE="JAVASCRIPT"%> //放在服务端页面第一行,表示该页默认使用Javascript脚本,在页面的其他地方使用<%'code...%>,解释器就认为这是第一行定义的语言
<%@LANGUAGE="VBSCRIPT"%> //放在服务端页面第一行,表示该页使用VBSCRIPT脚本,在页面的其他地方使用<%'code...%>,解释器就认为这是第一行定义的语言
另外,.vbs与.js还能在被 Window Script Host (WSH) 所解释运行
分类:
Web
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET10 - 预览版1新功能体验(一)