js简介

  • JavaScript 

本来打算在研究完servlet之后才开始进入前台,html,css,js,js库等等的。但是由于工作中用到了EXTJS,但是我还没有玩过。所以为了研究ext,我现在就开始整理js。


  • JS的简介
js,全面JavaScript,是一种基于客户端浏览器,面向对象,事件驱动式的脚本语言。仔细琢磨js的定义,定义中有3个东西,1,基于客户端浏览器,明显的js是一种前台语言,也就是我们经常说的运行在浏览器中的一个脚本。运行js的主要环境是各种浏览器,我们通常会将js嵌入到互联网页中,由浏览器负责解释执行。2,面向对象,其实个人觉得这个说法不是很准确的,因为我看过一本书,js权威指南(建议大家去看看,写的有些繁琐,但是很经典的,我只看过一遍,在整理js这一系列博客的时候我会针对性的去参照那本书去深入研究下js,这个到时候再讲),js其实是基于对象编程的,不是纯面向对象的。java是面向对象的,面向对象4大特征:抽象,封装,继承,多态。前2点js也没多大问题,后面的js的继承是一种特殊的伪继承,后面会详细讲到,至于多态的话js应该是没有的吧,反正我是没有用到过。3,事件驱动,我们在写js和使用js的时候大量的用到了js函数,其中很多就是事件函数。比如说ajax的回调,比如说按钮点击触发的各个动作操作,这些都是事件。关于事件这块,我会专门整理几篇博客,浏览器之间的事件处理机制还是比较重要的一块的。这里不做赘述。4,脚本语言,也就是说弱类型语言,事先不需要编译,直接就可以被解释执行。js当然也是逐行执行的,它无需进行严格的变量声音,内置了大量的现成的对象,我们在编码的时候直接用就好了。OK,js的定义讲的很清楚了,下面说下js其他的。
在js出现之前,互联网页面都是静态页面,也就是说浏览器内核解释执行html代码,是不能动的,只能做显示让人看看而已。直到出现了js,使得互联网页可以拥有丰富多彩的动画和用户交互。所以说js的主要功能就是:动态修改html页面内容:包括创建,删除html页面元素,修改html页面元素的内容,外观,位置,大小等等。js由网站服务器开发,然后客户通过下载下载到本地客户端来执行,因此js有如下2个限制:
1,js不能访问本地客户机的本地磁盘系统
2,js不能打开客户机上网络连接。

  • java和js

js的名字里面有一个java,然后我们玩j2e实际上也主要是在玩java和js。所以我觉得对比下这2种语言,详细的整理下2者的区别什么的还是很有必要的:
1,java和js是2个完全不同的产品。java是sun公司的得意之作,是在C++的基础上推出的一种面向对象的程序设计语言。js是Netscape公司的产品,他是一种可以嵌入web页面中的解释性语言,目的就是说为了扩展浏览器的功能。
2,java是纯粹的面向对象语言,js是基于面向对象的,什么叫基于?就是说可以运用面向对象的这种编程思想,但是它并不是纯粹的面向对象语言。玩java,即使是开发最简单的程序,也要必须从类定义开始。js基于对象,本身提供了非常丰富的内部对象供开发人员使用。写java就是写一个个的类,写js往往是写大量的函数。
3,java和js的执行方式完全不同。java要经过编译这一步,才能变成可以执行的class这种2进制字节,js不用编译,可以直接有浏览器解释执行。
4,这2种语言的变量申明也不一样。java采用强类型变量语言,所有的变量都具有固定的数据类型,而且变量必须经过申明才能使用。js是弱类型变量语言,使用的是不需要声明,由解释器在运行的时候检查其数据结构。
5,代码格式不一样。java的代码是一种与HMTL无关的格式,必须通过像html代码应用外媒体那样去装载,其代码以字节码的形式保存在独立的文档中。js的代码是一种文本字符格式,可以直接嵌在html文档中,并且可以动态加载。所以编写html文档就想编辑文本文件一样方便的。

  • js,JScript,ECMAScript介绍
最后,说一下还有一门和js差不多的脚本语言,就是JScript。他们2个差不多的,只是js是有Netscape开发的,JScript是有Microsoft开发的而已。现在2种语言都向后兼容了ECMAScript。也就是说现在我们一般说的js是一个通用的名称了呢,所有的浏览器都可以识别的。所以我们需要使用js脚本的时候,最好写<script language="javascript">这种,编程时也尽量避免使用浏览器特定的功能,最好遵循ECMAScript标准,这样子可以保证兼容性。

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