JavaScript工作原理

HTML代码所表示的文档是一种静态文档,几乎没有交互功能,很难使页面成为动态页面。增加脚本语言,可使数据发送到服务器之前先进行处理和校验,动态地创建新的Web内容,更重要的是,引入脚本语言使我们有了事件驱动的软件开发环境。 
 1)JavaScript简介 
JavaScript的原名叫LiveScript,是NetScape公司在引入Sun公司有关Java的程序设计概念后,重新设计而更名的。JavaScript是一种可以嵌入HTML文档的,基于对象并具有某些面向对象特征的脚本语言。 
 说明:浏览器端脚本语言除了JavaScript,还有VBScript和Jscript,后两个是Microsoft公司设计的,欲了解相关内容,可到Microsoft公司网站查询。本课程仅介绍JavaScript。 
 2JavaScript的特点 
JavaScript是一种基于对象(Object-Based)和事件驱动(Event Driven),由浏览器解释执行的,具有安全性能的客户端脚本语言。使用它的目的是与HTML、Java Applet(Java小程序)一起实现在一个Web页面中链接多个对象,与Web客户交互作用,从而可以开发客户端的应用程序等。它是通过嵌入在HTML语言中实现的。它的出现弥补了HTML语言的缺陷,它是Java与HTML折衷的选择,具有以下几个基本特点: 
? 是一种脚本语言 
 采用小程序段的方式实现编程,以嵌入的方式,与HTML标识结合在一起,方便用户的使用操作。 
? 基于对象的语言。 
 这里的对象,是指客户机、浏览器、网页文档。也就是说,JavaScript以类似C、Java的语法,以客户机、浏览器、网页文档、文档内部各种以标记表示的HTML元素为对象,以控制这些对象为目标,进而控制整个客户端的一种客户端脚本编程语言。 
? 简单 
 首先它是一种基于Java基本语句和控制流之上的简单而紧凑的设计, 从而对于学习Java是一种非常好的过渡。其次它的变量类型是采用弱类型,并未使用严格的数据类型。 
? 安全 
 它不允许访问服务器本地的硬盘,因此不能将数据存入到服务器上;不允许对网络文档进行修改和删除,只能通过浏览器实现信息浏览或动态交互。从而有效地防止数据的丢失。 
? 动态 
 它可以直接对用户的输入做出响应,无须经过Web服务程序。它对用户的响应,是采用以事件驱动的方式进行的。事件(Event)可分为两类,一是用户对浏览器进行的某种操作,比如按下鼠标、移动窗口、选择菜单等,可以视为用户事件;二是系统事件,如时间的时刻变化等。当事件发生后,会向浏览器发送相应的消息(用户消息或系统消息),根据消息,浏览器可能会做出相应的响应,这种响应称为事件驱动,也叫消息驱动。 
? 跨平台 
JavaScript代码由浏览器解释执行,与操作环境无关,只要能运行浏览器的计算机,并支持JavaScript的浏览器就可正确执行,从而实现了“编写一次,走遍天下”的梦想。 
 实际上JavaScript最杰出之处在于可以用很小的程序做大量的事。无须有高性能的电脑,软件仅需一个字处理软件及一浏览器,无须WEB服务器通道,通过自己的电脑即可完成所有的事情。 
JavaScript 和 Java 很类似,但并不一样。Java 是一种比JavaScript 更复杂许多的程序语言,而 JavaScript 则是相当容易了解的语言。许多 Java 的特性在 Java Script 中并不支持。 
 3)JavaScript的工作原理 
1)JavaScript的工作原理 
  JavaScript编程可以完成诸如构造动画,动态菜单等使页面更加生动、活泼的任务(实例见洪恩在线:http://www.hongen.com/pc/homepage/javascript/index1.htm),还可以对客户机文件系统、注册表等进行操作,如对文件夹、文件的建立,复制,删除,修改注册表,锁定注册表,锁定浏览器等等,有许多随着网页打开而运行的病毒就是含在网页中的JavaScript程序在作怪。由此可见,JavaScript是控制客户机的精灵。 
 在B/S程序中,为了均衡负载,减轻服务器的计算负担,凡是不需要服务器程序做的工作,可尽量交给客户端程序(如JavaScript程序)去做。我们用HTML标记构造出用户界面,用户通过界面输入数据,向浏览器请求数据等操作。在用户输入数据,或者是输入完毕,将数据向服务器提交的时候,对数据的检验等任务完全可交给JavaScript程序来完成。本课程主要介绍此类任务的JavaScript编程技术。 

 通过JavaScript脚本检验FORM数据 
 JavaScript的工作原理,就是以基于对象和一些面向对象的特征: 
? JavaScript通过控制客户机上各种对象的方式,控制客户机,对客户机进行操作。 
? 根据用户或系统事件,做出相应的响应。 

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。