由此面试,面试官问我,js能做什么。我知道js是干什么用的,到底js能做什么,谁能给有条理的说下?

JavaScript014

由此面试,面试官问我,js能做什么。我知道js是干什么用的,到底js能做什么,谁能给有条理的说下?,第1张

JS = JavaScript,一种计算机脚本语言,主要在web浏览器(客户端)解释执行,由网景公司开发。

JScript是由微软公司开发的活动脚本语言,是微软对ECMAScript规范的实现。

JavaScript 是一种新的描述语言,可以被嵌入 HTML 的文件之中。

通过 JavaScript 可以做到回应使用者的需求事件 (如: form 的输入) 而不用任何的网络来回传输资料,所以当一位使用者输入一项资料时,它不用经过网络传给服务器端 (server)处理,再传回来的过程,而直接可以被客户端 (client) 的应用程序所处理.

脚本语言真正面向的是特定类型问题的解决,其中主要涉及如何创建更丰富、更具有互动能力的图形用户界面(GUI)。然而,脚本语言也许能解决客户端编程中80%的问题。你碰到的问题可能完全就在那80%里面。而且由于脚本编制语言的宗旨是尽可能地简化与快速,所以在考虑其他更复杂的方案之前(如Java及ActiveX),首先应想一下脚本语言是否可行。

这里主要指的是Javascript和Jscript简称JS都是因特网上最流行的网页脚本语言,前者与Java无任何关系,后者是微软开发。它是网站前端开发必要的一种所谓的特效技术。

JS主要是做界面的.用于客户端也就是浏览器端上执行的脚本开发。

可以使网页有动态的效果(特效,如:图片、文字的滚动;层的动态切换,显示及隐藏;对html元素的操作;动态的对html内容修改;动态的修改CSS样式;实现如下拉列表的连动 等等...),可以进行表单的输入验证(如:邮箱、电话、邮编的合法性,输入内容长度及内容验证等)

Javascript短小精悍, 又是在客户机上执行的,大大提高了网页的浏览速度和交互能力。 同时它又是专门为制作Web网页而量身定做的一种简单的编程语言。

JS文件只需用记事本就可打开修改,修改完成必须以JS为后缀的文件。 Javascript 是一种解释型的、基于对象的脚本语言。尽管与 C++这样成熟的面向对象的语言相比,JScript 的功能要弱一些,但对于它的预期用途而言,JScript 的功能已经足够大了。

Javascript不是其他语言的精简版(例如,它只是与 Java 有点模糊而间接的关系),也不是任何事物的简化。不过,它有其局限性。例如,您不能使用该语言来编写独立运行的应用程序,并且没有对读写文件的内置支持。此外,Javascript脚本只能在某个解释器或“宿主”上运行,如 Active Server Pages(ASP)、Internet浏览器或者 Windows脚本宿主。

Javascript 是一种宽松类型的语言。宽松类型意味着您不必显式定义变量的数据类型。事实上 Javascript 更进一步。您无法在JScript上明确地定义数据类型。此外,在大多数情况下,Javascript 将根据需要自动进行转换。例如,如果将一个数值添加到由文本组成的某项(一个字符串),该数值将被转换为文本。

面向对象技术是目前流行的系统设计开发技术,它包括面向对象分析和面向对象程序设计。面向对象程序设计技术的提出,主要是为了解决传统程序设计方法——结构化程序设计所不能解决的代码重用问题。

面向对象的编程方法具有四个基本特征:

1.抽象:

抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。比如,我们要设计一个学生成绩管理系统,考察学生这个对象时,我们只关心他的班级、学号、成绩等,而不用去关心他的身高、体重这些信息。抽象包括两个方面,一是过程抽象,二是数据抽象。过程抽象是指任何一个明确定义功能的操作都可被使用者看作单个的实体看待,尽管这个操作实际上可能由一系列更低级的操作来完成。数据抽象定义了数据类型和施加于该类型对象上的操作,并限定了对象的值只能通过使用这些操作修改和观察。

2.继承:继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要。这也体现了大自然中一般与特殊的关系。继承性很好的解决了软件的可重用性问题。比如说,所有的Windows应用程序都有一个窗口,它们可以看作都是从一个窗口类派生出来的。但是有的应用程序用于文字处理,有的应用程序用于绘图,这是由于派生出了不同的子类,各个子类添加了不同的特性。

3.封装:

封装是面向对象的特征之一,是对象和类概念的主要特性。封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象。一旦定义了一个对象的特性,则有必要决定这些特性的可见性,即哪些特性对外部世界是可见的,哪些特性用于表示内部状态。在这个阶段定义对象的接口。通常,应禁止直接访问一个对象的实际表示,而应通过操作接口访问对象,这称为信息隐藏。事实上,信息隐藏是用户对封装性的认识,封装则为信息隐藏提供支持。封装保证了模块具有较好的独立性,使得程序维护修改较为容易。对应用程序的修改仅限于类的内部,因而可以将应用程序修改带来的影响减少到最低限度。

4. 多态性:

多态性是指允许不同类的对象对同一消息作出响应。比如同样的加法,把两个时间加在一起和把两个整数加在一起肯定完全不同。又比如,同样的选择编辑-粘贴操作,在字处理程序和绘图程序中有不同的效果。多态性包括参数化多态性和包含多态性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。

面向对象程序设计具有许多优点:

1、开发时间短,效率高,可靠性高,所开发的程序更强壮。由于面向对象编程的可重用性,可以在应用程序中大量采用成熟的类库,从而缩短了开发时间。

2、应用程序更易于维护、更新和升级。继承和封装使得应用程序的修改带来的影响更加局部化。